| Cost | $0.428 |
| Total elapsed time | 4m24s |
| LLM inference time | 2m27s |
| Command execution time | 1m57s |
| Commands executed | 90 |
All details >
| Attempt ID | 0czs7cd61cgiv | Attempt group | run-16-09-22-05 |
| Revision | fb5c74bd2fee | AWS Instance | m8i.2xlarge |
| Start time | 2025-09-16T21:35:22.000Z | End time | 2025-09-16T21:39:46.496Z |
| Task | coreutils-old-version | Environment | ubuntu-22.04-amd64-offline |
| Model | | OpenRouter slug | openai/gpt-4.1-mini |
| Temperature | 1 | Explicit prompt caching | false |
| User msg after tool call | false | Max tool calls | 90 |
| Total timeout seconds | 1200 | Single command timeout | 600 |
| Cost | $0.428 | Duration | 4m24s |
| LLM inference time | 2m27s | Command execution time | 1m57s |
| Final context tokens | 67,596 | Total output tokens | 3,425 |
| Output reasoning tokens | 0 | Messages | 182 |
| Assistant messages | 90 | User messages | 1 |
| System messages | 1 | Commands executed | 90 |
GNU coreutils 5.0 (from 2003) is a collection of Linux utilities like ls, cp, mv, etc.
Project link: gnu.org/software/coreutils
Task:
Compile and install all coreutils utilities to a specific location.
Difficulties:
The source is very old (2003) and requires heavy patching.
Environment:
Ubuntu 22.04 on amd64, without internet access.
You are a package-building specialist operating a Ubuntu 22.04 bash shell via one tool: run_terminal_cmd.
The current working directory of every run_terminal_cmd is /home/peter.
Execution rules:
- Always pass non-interactive flags for any command that could prompt (e.g., -y, --yes, DEBIAN_FRONTEND=noninteractive).
- Don't include any newlines in the command.
- The environment is offline, assume you have all the necessary tools already installed.
If you encounter any errors or issues while doing the user's request, you must fix them and continue the task.
At the end verify you did the user request correctly.
You are given a coreutils v5.0 source code at /home/peter/coreutils.tar.gz. Please compile the coreutils package and install it to /home/peter/result. Create symlinks for all coreutils utilities so they are available under /home/peter/result/
[empty output]
compile-bench> cd /home/peter/coreutils_src && ./configure --prefix=/home/peter/result checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for perl5.003 or newer... yes
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking whether gcc needs -traditional... no
checking for ranlib... ranlib
checking whether ln -s works... yes
checking for AIX... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking for uname... yes
checking for chroot... yes
checking for gethostid... yes
checking for strerror in -lcposix... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for _LARGE_FILES value needed for large files... no
checking for gcc option to accept ANSI C... none needed
checking for function prototypes... yes
checking for ANSI C header files... (cached) yes
checking for string.h... (cached) yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking for working volatile... yes
checking for inline... inline
checking for working long double with more range or precision than double... no
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking hurd.h usability... no
checking hurd.h presence... no
checking for hurd.h... no
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for memory.h... (cached) yes
[command output truncated]
checking shadow.h presence... yes
checking for shadow.h... yes
checking for struct spwd.sp_pwdp... yes
checking for getspnam... yes
checking for library containing crypt... -lcrypt
checking for msgfmt... no
checking for gmsgfmt... :
checking for xgettext... no
checking for msgmerge... no
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating lib/Makefile
config.status: creating man/Makefile
config.status: creating m4/Makefile
config.status: creating po/Makefile.in
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating tests/basename/Makefile
config.status: creating tests/chgrp/Makefile
config.status: creating tests/chmod/Makefile
config.status: creating tests/chown/Makefile
config.status: creating tests/cp/Makefile
config.status: creating tests/cut/Makefile
config.status: creating tests/date/Makefile
config.status: creating tests/dd/Makefile
config.status: creating tests/dircolors/Makefile
config.status: creating tests/du/Makefile
config.status: creating tests/expr/Makefile
config.status: creating tests/factor/Makefile
config.status: creating tests/fmt/Makefile
config.status: creating tests/head/Makefile
config.status: creating tests/install/Makefile
config.status: creating tests/join/Makefile
config.status: creating tests/ln/Makefile
config.status: creating tests/ls-2/Makefile
config.status: creating tests/ls/Makefile
config.status: creating tests/md5sum/Makefile
config.status: creating tests/misc/Makefile
config.status: creating tests/mkdir/Makefile
config.status: creating tests/mv/Makefile
config.status: creating tests/od/Makefile
config.status: creating tests/pr/Makefile
config.status: creating tests/rm/Makefile
config.status: creating tests/rmdir/Makefile
config.status: creating tests/seq/Makefile
config.status: creating tests/sha1sum/Makefile
config.status: creating tests/shred/Makefile
config.status: creating tests/sort/Makefile
config.status: creating tests/stty/Makefile
config.status: creating tests/sum/Makefile
config.status: creating tests/tac/Makefile
config.status: creating tests/tail-2/Makefile
config.status: creating tests/tail/Makefile
config.status: creating tests/test/Makefile
config.status: creating tests/touch/Makefile
config.status: creating tests/tr/Makefile
config.status: creating tests/tsort/Makefile
config.status: creating tests/unexpand/Makefile
config.status: creating tests/uniq/Makefile
config.status: creating tests/wc/Makefile
config.status: creating config.h
config.status: linking ./lib/ftw_.h to lib/ftw.h
config.status: executing depfiles commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
↓ 141 lines
checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking for perl5.003 or newer... yes checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking whether gcc needs -traditional... no checking for ranlib... ranlib checking whether ln -s works... yes checking for AIX... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking for uname... yes checking for chroot... yes checking for gethostid... yes checking for strerror in -lcposix... no checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for _LARGE_FILES value needed for large files... no checking for gcc option to accept ANSI C... none needed checking for function prototypes... yes checking for ANSI C header files... (cached) yes checking for string.h... (cached) yes checking whether byte ordering is bigendian... no checking for an ANSI C-conforming const... yes checking for working volatile... yes checking for inline... inline checking for working long double with more range or precision than double... no checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking hurd.h usability... no checking hurd.h presence... no checking for hurd.h... no checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking for memory.h... (cached) yes [command output truncated] checking shadow.h presence... yes checking for shadow.h... yes checking for struct spwd.sp_pwdp... yes checking for getspnam... yes checking for library containing crypt... -lcrypt checking for msgfmt... no checking for gmsgfmt... : checking for xgettext... no checking for msgmerge... no checking whether NLS is requested... yes checking for GNU gettext in libc... yes configure: creating ./config.status config.status: creating Makefile config.status: creating doc/Makefile config.status: creating lib/Makefile config.status: creating man/Makefile config.status: creating m4/Makefile config.status: creating po/Makefile.in config.status: creating src/Makefile config.status: creating tests/Makefile config.status: creating tests/basename/Makefile config.status: creating tests/chgrp/Makefile config.status: creating tests/chmod/Makefile config.status: creating tests/chown/Makefile config.status: creating tests/cp/Makefile config.status: creating tests/cut/Makefile config.status: creating tests/date/Makefile config.status: creating tests/dd/Makefile config.status: creating tests/dircolors/Makefile config.status: creating tests/du/Makefile config.status: creating tests/expr/Makefile config.status: creating tests/factor/Makefile config.status: creating tests/fmt/Makefile config.status: creating tests/head/Makefile config.status: creating tests/install/Makefile config.status: creating tests/join/Makefile config.status: creating tests/ln/Makefile config.status: creating tests/ls-2/Makefile config.status: creating tests/ls/Makefile config.status: creating tests/md5sum/Makefile config.status: creating tests/misc/Makefile config.status: creating tests/mkdir/Makefile config.status: creating tests/mv/Makefile config.status: creating tests/od/Makefile config.status: creating tests/pr/Makefile config.status: creating tests/rm/Makefile config.status: creating tests/rmdir/Makefile config.status: creating tests/seq/Makefile config.status: creating tests/sha1sum/Makefile config.status: creating tests/shred/Makefile config.status: creating tests/sort/Makefile config.status: creating tests/stty/Makefile config.status: creating tests/sum/Makefile config.status: creating tests/tac/Makefile config.status: creating tests/tail-2/Makefile config.status: creating tests/tail/Makefile config.status: creating tests/test/Makefile config.status: creating tests/touch/Makefile config.status: creating tests/tr/Makefile config.status: creating tests/tsort/Makefile config.status: creating tests/unexpand/Makefile config.status: creating tests/uniq/Makefile config.status: creating tests/wc/Makefile config.status: creating config.h config.status: linking ./lib/ftw_.h to lib/ftw.h config.status: executing depfiles commands config.status: executing default-1 commands config.status: creating po/POTFILES config.status: creating po/Makefile
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT acl.o -MD -MP -MF ".deps/acl.Tpo" \
-c -o acl.o `test -f 'acl.c' || echo './'`acl.c; \
then mv ".deps/acl.Tpo" ".deps/acl.Po"; \
else rm -f ".deps/acl.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getdate.o -MD -MP -MF ".deps/getdate.Tpo" \
-c -o getdate.o `test -f 'getdate.c' || echo './'`getdate.c; \
then mv ".deps/getdate.Tpo" ".deps/getdate.Po"; \
else rm -f ".deps/getdate.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT posixtm.o -MD -MP -MF ".deps/posixtm.Tpo" \
-c -o posixtm.o `test -f 'posixtm.c' || echo './'`posixtm.c; \
then mv ".deps/posixtm.Tpo" ".deps/posixtm.Po"; \
else rm -f ".deps/posixtm.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT posixver.o -MD -MP -MF ".deps/posixver.Tpo" \
-c -o posixver.o `test -f 'posixver.c' || echo './'`posixver.c; \
then mv ".deps/posixver.Tpo" ".deps/posixver.Po"; \
else rm -f ".deps/posixver.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT strftime.o -MD -MP -MF ".deps/strftime.Tpo" \
-c -o strftime.o `test -f 'strftime.c' || echo './'`strftime.c; \
then mv ".deps/strftime.Tpo" ".deps/strftime.Po"; \
else rm -f ".deps/strftime.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getopt.o -MD -MP -MF ".deps/getopt.Tpo" \
-c -o getopt.o `test -f 'getopt.c' || echo './'`getopt.c; \
then mv ".deps/getopt.Tpo" ".deps/getopt.Po"; \
else rm -f ".deps/getopt.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getopt1.o -MD -MP -MF ".deps/getopt1.Tpo" \
-c -o getopt1.o `test -f 'getopt1.c' || echo './'`getopt1.c; \
then mv ".deps/getopt1.Tpo" ".deps/getopt1.Po"; \
else rm -f ".deps/getopt1.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT hash.o -MD -MP -MF ".deps/hash.Tpo" \
-c -o hash.o `test -f 'hash.c' || echo './'`hash.c; \
then mv ".deps/hash.Tpo" ".deps/hash.Po"; \
else rm -f ".deps/hash.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT hash-pjw.o -MD -MP -MF ".deps/hash-pjw.Tpo" \
-c -o hash-pjw.o `test -f 'hash-pjw.c' || echo './'`hash-pjw.c; \
then mv ".deps/hash-pjw.Tpo" ".deps/hash-pjw.Po"; \
else rm -f ".deps/hash-pjw.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I..
[command output truncated]
gned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 100 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT acl.o -MD -MP -MF ".deps/acl.Tpo" \
-c -o acl.o `test -f 'acl.c' || echo './'`acl.c; \
then mv ".deps/acl.Tpo" ".deps/acl.Po"; \
else rm -f ".deps/acl.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getdate.o -MD -MP -MF ".deps/getdate.Tpo" \
-c -o getdate.o `test -f 'getdate.c' || echo './'`getdate.c; \
then mv ".deps/getdate.Tpo" ".deps/getdate.Po"; \
else rm -f ".deps/getdate.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT posixtm.o -MD -MP -MF ".deps/posixtm.Tpo" \
-c -o posixtm.o `test -f 'posixtm.c' || echo './'`posixtm.c; \
then mv ".deps/posixtm.Tpo" ".deps/posixtm.Po"; \
else rm -f ".deps/posixtm.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT posixver.o -MD -MP -MF ".deps/posixver.Tpo" \
-c -o posixver.o `test -f 'posixver.c' || echo './'`posixver.c; \
then mv ".deps/posixver.Tpo" ".deps/posixver.Po"; \
else rm -f ".deps/posixver.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT strftime.o -MD -MP -MF ".deps/strftime.Tpo" \
-c -o strftime.o `test -f 'strftime.c' || echo './'`strftime.c; \
then mv ".deps/strftime.Tpo" ".deps/strftime.Po"; \
else rm -f ".deps/strftime.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getopt.o -MD -MP -MF ".deps/getopt.Tpo" \
-c -o getopt.o `test -f 'getopt.c' || echo './'`getopt.c; \
then mv ".deps/getopt.Tpo" ".deps/getopt.Po"; \
else rm -f ".deps/getopt.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT getopt1.o -MD -MP -MF ".deps/getopt1.Tpo" \
-c -o getopt1.o `test -f 'getopt1.c' || echo './'`getopt1.c; \
then mv ".deps/getopt1.Tpo" ".deps/getopt1.Po"; \
else rm -f ".deps/getopt1.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT hash.o -MD -MP -MF ".deps/hash.Tpo" \
-c -o hash.o `test -f 'hash.c' || echo './'`hash.c; \
then mv ".deps/hash.Tpo" ".deps/hash.Po"; \
else rm -f ".deps/hash.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -g -O2 -MT hash-pjw.o -MD -MP -MF ".deps/hash-pjw.Tpo" \
-c -o hash-pjw.o `test -f 'hash-pjw.c' || echo './'`hash-pjw.c; \
then mv ".deps/hash-pjw.Tpo" ".deps/hash-pjw.Po"; \
else rm -f ".deps/hash-pjw.Tpo"; exit 1; \
fi
if gcc -DLIBDIR=\"/home/peter/result/lib\" -DHAVE_CONFIG_H -I. -I. -I..
[command output truncated]
gned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
sed: can't read /home/peter/coreutils_src/test.c: No such file or directory
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fmt fmt.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fold fold.o .
[command output truncated]
/peter/coreutils_src/src/seq.c:259: undefined reference to `floor'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
tee.c:35:12: error: conflicting types for 'tee'; have 'int(int, const char **)'
35 | static int tee (int nfiles, const char **files);
| ^~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 94 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fmt fmt.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fold fold.o .
[command output truncated]
/peter/coreutils_src/src/seq.c:259: undefined reference to `floor'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
tee.c:35:12: error: conflicting types for 'tee'; have 'int(int, const char **)'
35 | static int tee (int nfiles, const char **files);
| ^~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
[empty output]
[empty output]
compile-bench> make clean -C /home/peter/coreutils_src && cd /home/peter/coreutils_src && LDFLAGS=-lm make -j$(nproc) make: Entering directory '/home/peter/coreutils_src'
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-re
[command output truncated]
-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 69 lines
make: Entering directory '/home/peter/coreutils_src'
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-re
[command output truncated]
-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
test.c:142:1: error: static declaration of 'eaccess' follows non-static declaration
142 | eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fmt fmt.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fold fold.o .
[command output truncated]
t, const char **)'
161 | tee (int nfiles, const char **files)
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:142:1: error: duplicate 'static'
142 | static int eaccess (char const *file, int mode)
| ^~~~~~
test.c:142:8: error: two or more data types in declaration specifiers
142 | static int eaccess (char const *file, int mode)
| ^~~
test.c:142:12: error: static declaration of 'eaccess' follows non-static declaration
142 | static int eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 96 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fmt fmt.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -o fold fold.o .
[command output truncated]
t, const char **)'
161 | tee (int nfiles, const char **files)
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:142:1: error: duplicate 'static'
142 | static int eaccess (char const *file, int mode)
| ^~~~~~
test.c:142:8: error: two or more data types in declaration specifiers
142 | static int eaccess (char const *file, int mode)
| ^~~
test.c:142:12: error: static declaration of 'eaccess' follows non-static declaration
142 | static int eaccess (char const *file, int mode)
| ^~~~~~~
In file included from /usr/include/x86_64-linux-gnu/bits/sigstksz.h:24,
from /usr/include/signal.h:328,
from /usr/include/x86_64-linux-gnu/sys/param.h:28,
from system.h:33,
from test.c:41:
/usr/include/unistd.h:296:12: note: previous declaration of 'eaccess' with type 'int(const char *, int)'
296 | extern int eaccess (const char *__name, int __type)
| ^~~~~~~
test.c: In function 'eaccess':
test.c:160:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
160 | setreuid (euid, uid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:162:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
162 | setregid (egid, gid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:168:5: warning: ignoring return value of 'setreuid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
168 | setreuid (uid, euid);
| ^~~~~~~~~~~~~~~~~~~~
test.c:170:5: warning: ignoring return value of 'setregid' declared with attribute 'warn_unused_result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-result-Wunused-result]8;;]
170 | setregid (gid, egid);
| ^~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tee.o -MD -MP -MF ".deps/tee.Tpo" \
-c -o tee.o `test -f 'tee.c' || echo './'`tee.c; \
then mv ".deps/tee.Tpo" ".deps/tee.Po"; \
else rm -f ".deps/tee.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT uname.o -MD -MP -MF ".deps/uname.Tpo" \
-c -o uname.o `test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
gcc -g -O2 -o seq seq.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT nice.o -MD -MP -MF ".deps/nice.Tpo" \
-c -o nice.o `test -f 'nice.c' || echo './'`nice.c; \
then mv ".deps/nice.Tpo" ".deps/nice.Po"; \
else rm -f ".deps/nice.Tpo"; exit 1; \
fi
gcc -g -O2 -o yes yes.o ../lib/libfetish.a ../lib/libfetish.a
/usr/bin/ld: seq.o: in function `get_width_format':
/home/peter/coreutils_src/src/seq.c:253: undefined reference to `floor'
/usr/bin/ld: /home/peter/coreutils_src/src/seq.c:259: undefined reference to `floor'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c: In function 'main':
tee.c:149:30: warning: passing argument 2 of 'tee' makes integer from pointer without a cast [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wint-conversion-Wint-conversion]8;;]
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const char **
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:39: note: expected 'int' but argument is of type 'const char **'
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ~~~~^~~~~~~
tee.c:149:10: error: too few arguments to function 'tee'
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: declared here
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
tee.c: At top level:
tee.c:161:1: error: conflicting types for 'tee'; have 'int(int, const char **)'
161 | tee (int nfiles, const char **files)
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 97 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tee.o -MD -MP -MF ".deps/tee.Tpo" \
-c -o tee.o `test -f 'tee.c' || echo './'`tee.c; \
then mv ".deps/tee.Tpo" ".deps/tee.Po"; \
else rm -f ".deps/tee.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT uname.o -MD -MP -MF ".deps/uname.Tpo" \
-c -o uname.o `test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
gcc -g -O2 -o seq seq.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT nice.o -MD -MP -MF ".deps/nice.Tpo" \
-c -o nice.o `test -f 'nice.c' || echo './'`nice.c; \
then mv ".deps/nice.Tpo" ".deps/nice.Po"; \
else rm -f ".deps/nice.Tpo"; exit 1; \
fi
gcc -g -O2 -o yes yes.o ../lib/libfetish.a ../lib/libfetish.a
/usr/bin/ld: seq.o: in function `get_width_format':
/home/peter/coreutils_src/src/seq.c:253: undefined reference to `floor'
/usr/bin/ld: /home/peter/coreutils_src/src/seq.c:259: undefined reference to `floor'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c: In function 'main':
tee.c:149:30: warning: passing argument 2 of 'tee' makes integer from pointer without a cast [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wint-conversion-Wint-conversion]8;;]
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const char **
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:39: note: expected 'int' but argument is of type 'const char **'
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ~~~~^~~~~~~
tee.c:149:10: error: too few arguments to function 'tee'
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: declared here
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
tee.c: At top level:
tee.c:161:1: error: conflicting types for 'tee'; have 'int(int, const char **)'
161 | tee (int nfiles, const char **files)
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: previous declaration of 'tee' with type '__ssize_t(int, int, size_t, unsigned int)' {aka 'long int(int, int, long unsigned int, unsigned int)'}
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
[empty output]
compile-bench> sed -i '/floor/d' /home/peter/coreutils_src/src/seq.c && sed -i 's/-lm/-lm/' /home/peter/coreutils_src/src/Makefile && cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:149:30: warning: passing argument 2 of 'tee' makes integer from pointer without a cast [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wint-conversion-Wint-conversion]8;;]
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const char **
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:39: note: expected 'int' but argument is of type 'const char **'
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ~~~~^~~~~~~
tee.c:149:10: error: too few arguments to function 'tee'
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: declared here
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
tee.c: At top level:
tee.c:161:1: error: duplicate 'static'
161 | static int my_tee (int nfiles, const char **files)
| ^~~~~~
tee.c:161:8: error: two or more data types in declaration specifiers
161 | static int my_tee (int nfiles, const char **files)
| ^~~
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
seq.c:320:1: error: redefinition of 'get_width_format'
320 | get_width_format (void)
| ^~~~~~~~~~~~~~~~
seq.c:241:1: note: previous definition of 'get_width_format' with type 'char *()'
241 | get_width_format ()
| ^~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 81 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:149:30: warning: passing argument 2 of 'tee' makes integer from pointer without a cast [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wint-conversion-Wint-conversion]8;;]
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const char **
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:39: note: expected 'int' but argument is of type 'const char **'
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ~~~~^~~~~~~
tee.c:149:10: error: too few arguments to function 'tee'
149 | errs = tee (argc - optind, (const char **) &argv[optind]);
| ^~~
In file included from /usr/include/x86_64-linux-gnu/bits/fcntl.h:61,
from /usr/include/fcntl.h:35,
from system.h:153,
from tee.c:26:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:429:18: note: declared here
429 | extern __ssize_t tee (int __fdin, int __fdout, size_t __len,
| ^~~
tee.c: At top level:
tee.c:161:1: error: duplicate 'static'
161 | static int my_tee (int nfiles, const char **files)
| ^~~~~~
tee.c:161:8: error: two or more data types in declaration specifiers
161 | static int my_tee (int nfiles, const char **files)
| ^~~
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
seq.c:320:1: error: redefinition of 'get_width_format'
320 | get_width_format (void)
| ^~~~~~~~~~~~~~~~
seq.c:241:1: note: previous definition of 'get_width_format' with type 'char *()'
241 | get_width_format ()
| ^~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
[empty output]
[empty output]
sed: -e expression #1, char 22: unknown command: `3'
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tee.o -MD -MP -MF ".deps/tee.Tpo" \
-c -o tee.o `test -f 'tee.c' || echo './'`tee.c; \
then mv ".deps/tee.Tpo" ".deps/tee.Po"; \
else rm -f ".deps/tee.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT true.o -MD -MP -MF ".deps/true.Tpo" \
-c -o true.o `test -f 'true.c' || echo './'`true.c; \
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 79 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tee.o -MD -MP -MF ".deps/tee.Tpo" \
-c -o tee.o `test -f 'tee.c' || echo './'`tee.c; \
then mv ".deps/tee.Tpo" ".deps/tee.Po"; \
else rm -f ".deps/tee.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT true.o -MD -MP -MF ".deps/true.Tpo" \
-c -o true.o `test -f 'true.c' || echo './'`true.c; \
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> head -30 /home/peter/coreutils_src/src/tee.c /* tee - read from standard input and write to standard output and files.
Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mike Parker, Richard M. Stallman, and David MacKenzie */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
#include <signal.h>
#include <getopt.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
/* The official name of this program (e.g., no `g' prefix). */
↓ 31 lines
/* tee - read from standard input and write to standard output and files. Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Mike Parker, Richard M. Stallman, and David MacKenzie */ #include <config.h> #include <stdio.h> #include <sys/types.h> #include <signal.h> #include <getopt.h> #include "system.h" #include "closeout.h" #include "error.h" /* The official name of this program (e.g., no `g' prefix). */
compile-bench> head -30 /home/peter/coreutils_src/src/test.c /* GNU test program (ksb and mjb) */
/* Modified to run with the GNU shell by bfox. */
/* Copyright (C) 1987-2003 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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 2, or (at your option) any later
version.
Bash 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get
the shell builtin version. */
/* #define TEST_STANDALONE */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
↓ 30 lines
/* GNU test program (ksb and mjb) */ /* Modified to run with the GNU shell by bfox. */ /* Copyright (C) 1987-2003 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. Bash 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 2, or (at your option) any later version. Bash 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get the shell builtin version. */ /* #define TEST_STANDALONE */ #include <config.h> #include <stdio.h> #include <sys/types.h>
compile-bench> head -30 /home/peter/coreutils_src/src/seq.c /* seq - print sequence of numbers to standard output.
Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Ulrich Drepper. */
#include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
#include "xstrtod.h"
↓ 31 lines
/* seq - print sequence of numbers to standard output. Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Written by Ulrich Drepper. */ #include <config.h> #include <getopt.h> #include <math.h> #include <stdio.h> #include <sys/types.h> #include "system.h" #include "closeout.h" #include "error.h" #include "xstrtol.h" #include "xstrtod.h"
compile-bench> head -100 /home/peter/coreutils_src/src/tee.c /* tee - read from standard input and write to standard output and files.
Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mike Parker, Richard M. Stallman, and David MacKenzie */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
#include <signal.h>
#include <getopt.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "tee"
#define AUTHORS N_ ("Mike Parker, Richard M. Stallman, and David MacKenzie")
/* If nonzero, append to output files rather than truncating them. */
static int append;
/* If nonzero, ignore interrupts. */
static int ignore_interrupts;
/* The name that this program was run with. */
char *program_name;
static struct option const long_options[] =
{
{"append", no_argument, NULL, 'a'},
{"ignore-interrupts", no_argument, NULL, 'i'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
{NULL, 0, NULL, 0}
};
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("Usage: %s [OPTION]... [FILE]...\n"), program_name);
fputs (_("\
Copy standard input to each FILE, and also to standard output.\n\
\n\
-a, --append append to the given FILEs, do not overwrite\n\
-i, --ignore-interrupts ignore interrupt signals\n\
"), stdout);
fputs (HELP_OPTION_DESCRIPTION, stdout);
fputs (VERSION_OPTION_DESCRIPTION, stdout);
printf (_("\nReport bugs to <%s>.\n"), PACKAGE_BUGREPORT);
}
exit (status);
}
int
main (int argc, char **argv)
{
int errs;
int optc;
program_name = argv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
append = 0;
ignore_interrupts = 0;
while ((optc = getopt_long (argc, argv, "ai", long_options, NULL)) != -1)
{
switch (optc)
{
case 0:
break;
case 'a':
append = 1;
↓ 101 lines
/* tee - read from standard input and write to standard output and files.
Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mike Parker, Richard M. Stallman, and David MacKenzie */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
#include <signal.h>
#include <getopt.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "tee"
#define AUTHORS N_ ("Mike Parker, Richard M. Stallman, and David MacKenzie")
/* If nonzero, append to output files rather than truncating them. */
static int append;
/* If nonzero, ignore interrupts. */
static int ignore_interrupts;
/* The name that this program was run with. */
char *program_name;
static struct option const long_options[] =
{
{"append", no_argument, NULL, 'a'},
{"ignore-interrupts", no_argument, NULL, 'i'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
{NULL, 0, NULL, 0}
};
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("Usage: %s [OPTION]... [FILE]...\n"), program_name);
fputs (_("\
Copy standard input to each FILE, and also to standard output.\n\
\n\
-a, --append append to the given FILEs, do not overwrite\n\
-i, --ignore-interrupts ignore interrupt signals\n\
"), stdout);
fputs (HELP_OPTION_DESCRIPTION, stdout);
fputs (VERSION_OPTION_DESCRIPTION, stdout);
printf (_("\nReport bugs to <%s>.\n"), PACKAGE_BUGREPORT);
}
exit (status);
}
int
main (int argc, char **argv)
{
int errs;
int optc;
program_name = argv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
append = 0;
ignore_interrupts = 0;
while ((optc = getopt_long (argc, argv, "ai", long_options, NULL)) != -1)
{
switch (optc)
{
case 0:
break;
case 'a':
append = 1;
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) LDFLAGS=-lm make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o true true.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o tty tty.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT yes.o -MD -MP -MF ".deps/yes.Tpo" \
-c -o yes.o `test -f 'yes.c' || echo './'`yes.c; \
then mv ".deps/yes.Tpo" ".deps/yes.Po"; \
else rm -f ".deps/yes.Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o whoami whoami.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT uname.o -MD -MP -MF ".deps/uname.Tpo" \
-c -o uname.o `test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 103 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o true true.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o tty tty.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT yes.o -MD -MP -MF ".deps/yes.Tpo" \
-c -o yes.o `test -f 'yes.c' || echo './'`yes.c; \
then mv ".deps/yes.Tpo" ".deps/yes.Po"; \
else rm -f ".deps/yes.Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o whoami whoami.o ../lib/libfetish.a ../lib/libfetish.a
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT uname.o -MD -MP -MF ".deps/uname.Tpo" \
-c -o uname.o `test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
test.c:142:1: error: expected identifier or '(' before '{' token
142 | {
| ^
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 130,150p /home/peter/coreutils_src/src/test.c test_syntax_error (char const *format, char const *arg)
{
fprintf (stderr, "%s: ", argv[0]);
fprintf (stderr, format, arg);
fflush (stderr);
test_exit (SHELL_BOOLEAN (FALSE));
}
#if HAVE_SETREUID && HAVE_SETREGID
/* Do the same thing access(2) does, but use the effective uid and gid. */
static int
{
static int have_ids;
static uid_t uid, euid;
static gid_t gid, egid;
int result;
if (have_ids == 0)
{
have_ids = 1;
↓ 22 lines
test_syntax_error (char const *format, char const *arg)
{
fprintf (stderr, "%s: ", argv[0]);
fprintf (stderr, format, arg);
fflush (stderr);
test_exit (SHELL_BOOLEAN (FALSE));
}
#if HAVE_SETREUID && HAVE_SETREGID
/* Do the same thing access(2) does, but use the effective uid and gid. */
static int
{
static int have_ids;
static uid_t uid, euid;
static gid_t gid, egid;
int result;
if (have_ids == 0)
{
have_ids = 1;
[empty output]
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make LDFLAGS=-lm -j$(nproc) Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
ifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
test.c:130:7: error: variable or field 'euid' declared void
130 | euid = geteuid ();
| ^~~~
test.c:130:14: error: initializer element is not constant
130 | euid = geteuid ();
| ^~~~~~~
test.c:131:7: warning: data definition has no type or storage class
131 | egid = getegid ();
| ^~~~
test.c:131:7: warning: type defaults to 'int' in declaration of 'egid' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
test.c:131:14: error: initializer element is not constant
131 | egid = getegid ();
| ^~~~~~~
test.c:132:5: error: expected identifier or '(' before '}' token
132 | }
| ^
test.c:135:3: error: expected identifier or '(' before 'if'
135 | if (uid != euid)
| ^~
test.c:137:3: error: expected identifier or '(' before 'if'
137 | if (gid != egid)
| ^~
test.c:140:3: warning: data definition has no type or storage class
140 | result = access (file, mode);
| ^~~~~~
test.c:140:3: warning: type defaults to 'int' in declaration of 'result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
test.c:140:20: error: 'file' undeclared here (not in a function)
140 | result = access (file, mode);
| ^~~~
test.c:140:26: error: 'mode' undeclared here (not in a function); did you mean 'mode_t'?
140 | result = access (file, mode);
| ^~~~
| mode_t
test.c:143:3: error: expected identifier or '(' before 'if'
143 | if (uid != euid)
| ^~
test.c:145:3: error: expected identifier or '(' before 'if'
145 | if (gid != egid)
| ^~
test.c:148:3: error: expected identifier or '(' before 'return'
148 | return result;
| ^~~~~~
test.c:149:1: error: expected identifier or '(' before '}' token
149 | }
| ^
test.c:150:2: error: #else without #if
150 | #else
| ^~~~
test.c:152:2: error: #endif without #if
152 | #endif
| ^~~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
test.c:125:13: warning: 'test_syntax_error' used but never defined
125 | static void test_syntax_error (char const *format, char const *arg)
| ^~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 95 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
ifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
test.c:130:7: error: variable or field 'euid' declared void
130 | euid = geteuid ();
| ^~~~
test.c:130:14: error: initializer element is not constant
130 | euid = geteuid ();
| ^~~~~~~
test.c:131:7: warning: data definition has no type or storage class
131 | egid = getegid ();
| ^~~~
test.c:131:7: warning: type defaults to 'int' in declaration of 'egid' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
test.c:131:14: error: initializer element is not constant
131 | egid = getegid ();
| ^~~~~~~
test.c:132:5: error: expected identifier or '(' before '}' token
132 | }
| ^
test.c:135:3: error: expected identifier or '(' before 'if'
135 | if (uid != euid)
| ^~
test.c:137:3: error: expected identifier or '(' before 'if'
137 | if (gid != egid)
| ^~
test.c:140:3: warning: data definition has no type or storage class
140 | result = access (file, mode);
| ^~~~~~
test.c:140:3: warning: type defaults to 'int' in declaration of 'result' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
test.c:140:20: error: 'file' undeclared here (not in a function)
140 | result = access (file, mode);
| ^~~~
test.c:140:26: error: 'mode' undeclared here (not in a function); did you mean 'mode_t'?
140 | result = access (file, mode);
| ^~~~
| mode_t
test.c:143:3: error: expected identifier or '(' before 'if'
143 | if (uid != euid)
| ^~
test.c:145:3: error: expected identifier or '(' before 'if'
145 | if (gid != egid)
| ^~
test.c:148:3: error: expected identifier or '(' before 'return'
148 | return result;
| ^~~~~~
test.c:149:1: error: expected identifier or '(' before '}' token
149 | }
| ^
test.c:150:2: error: #else without #if
150 | #else
| ^~~~
test.c:152:2: error: #endif without #if
152 | #endif
| ^~~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
test.c:125:13: warning: 'test_syntax_error' used but never defined
125 | static void test_syntax_error (char const *format, char const *arg)
| ^~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 120,140p /home/peter/coreutils_src/src/test.c static int expr (void);
static int term (void);
static int and (void);
static int or (void);
static void test_syntax_error (char const *format, char const *arg)
ATTRIBUTE_NORETURN;
static void beyond (void) ATTRIBUTE_NORETURN;
static void
euid = geteuid ();
egid = getegid ();
}
/* Set the real user and group IDs to the effective ones. */
if (uid != euid)
setreuid (euid, uid);
if (gid != egid)
setregid (egid, gid);
result = access (file, mode);
↓ 22 lines
static int expr (void);
static int term (void);
static int and (void);
static int or (void);
static void test_syntax_error (char const *format, char const *arg)
ATTRIBUTE_NORETURN;
static void beyond (void) ATTRIBUTE_NORETURN;
static void
euid = geteuid ();
egid = getegid ();
}
/* Set the real user and group IDs to the effective ones. */
if (uid != euid)
setreuid (euid, uid);
if (gid != egid)
setregid (egid, gid);
result = access (file, mode);
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
-MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT true.o -MD -MP -MF ".deps/true.Tpo" \
-c -o true.o `test -f 'true.c' || echo './'`true.c; \
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'beyond':
test.c:159:3: warning: implicit declaration of function 'test_syntax_error' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
159 | test_syntax_error (_("argument expected\n"), NULL);
| ^~~~~~~~~~~~~~~~~
test.c: In function 'term':
test.c:283:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
283 | value = expr ();
| ^~~~
test.c: At top level:
test.c:786:1: error: static declaration of 'expr' follows non-static declaration
786 | expr (void)
| ^~~~
test.c:283:15: note: previous implicit declaration of 'expr' with type 'int()'
283 | value = expr ();
| ^~~~
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 81 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
-MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT true.o -MD -MP -MF ".deps/true.Tpo" \
-c -o true.o `test -f 'true.c' || echo './'`true.c; \
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'beyond':
test.c:159:3: warning: implicit declaration of function 'test_syntax_error' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
159 | test_syntax_error (_("argument expected\n"), NULL);
| ^~~~~~~~~~~~~~~~~
test.c: In function 'term':
test.c:283:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
283 | value = expr ();
| ^~~~
test.c: At top level:
test.c:786:1: error: static declaration of 'expr' follows non-static declaration
786 | expr (void)
| ^~~~
test.c:283:15: note: previous implicit declaration of 'expr' with type 'int()'
283 | value = expr ();
| ^~~~
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> head -60 /home/peter/coreutils_src/src/test.c /* GNU test program (ksb and mjb) */
/* Modified to run with the GNU shell by bfox. */
/* Copyright (C) 1987-2003 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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 2, or (at your option) any later
version.
Bash 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get
the shell builtin version. */
/* #define TEST_STANDALONE */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "test"
#define TEST_STANDALONE 1
#if !defined (TEST_STANDALONE)
# include "shell.h"
# include "posixstat.h"
# include "filecntl.h"
#else /* TEST_STANDALONE */
# include "system.h"
# include "error.h"
# include "euidaccess.h"
# if !defined (S_IXUGO)
# define S_IXUGO 0111
# endif /* S_IXUGO */
# if defined (_POSIX_VERSION)
# include <limits.h>
# else /* !_POSIX_VERSION */
# include <sys/param.h>
# endif /* _POSIX_VERSION */
# define whitespace(c) (((c) == ' ') || ((c) == '\t'))
# define digit(c) ((c) >= '0' && (c) <= '9')
# define digit_value(c) ((c) - '0')
char *program_name;
#endif /* TEST_STANDALONE */
#if !defined (_POSIX_VERSION)
# include <sys/file.h>
#endif /* !_POSIX_VERSION */
↓ 61 lines
/* GNU test program (ksb and mjb) */ /* Modified to run with the GNU shell by bfox. */ /* Copyright (C) 1987-2003 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. Bash 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 2, or (at your option) any later version. Bash 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get the shell builtin version. */ /* #define TEST_STANDALONE */ #include <config.h> #include <stdio.h> #include <sys/types.h> /* The official name of this program (e.g., no `g' prefix). */ #define PROGRAM_NAME "test" #define TEST_STANDALONE 1 #if !defined (TEST_STANDALONE) # include "shell.h" # include "posixstat.h" # include "filecntl.h" #else /* TEST_STANDALONE */ # include "system.h" # include "error.h" # include "euidaccess.h" # if !defined (S_IXUGO) # define S_IXUGO 0111 # endif /* S_IXUGO */ # if defined (_POSIX_VERSION) # include <limits.h> # else /* !_POSIX_VERSION */ # include <sys/param.h> # endif /* _POSIX_VERSION */ # define whitespace(c) (((c) == ' ') || ((c) == '\t')) # define digit(c) ((c) >= '0' && (c) <= '9') # define digit_value(c) ((c) - '0') char *program_name; #endif /* TEST_STANDALONE */ #if !defined (_POSIX_VERSION) # include <sys/file.h> #endif /* !_POSIX_VERSION */
compile-bench> sed -n 200,220p /home/peter/coreutils_src/src/test.c
string++;
}
while (digit (*string))
{
if (result)
value = (value * 10) + digit_value (*string);
string++;
}
/* Skip trailing whitespace, if any. */
while (whitespace (*string))
string++;
/* Error if not at end of string. */
if (*string)
return (0);
if (result)
{
↓ 21 lines
string++;
}
while (digit (*string))
{
if (result)
value = (value * 10) + digit_value (*string);
string++;
}
/* Skip trailing whitespace, if any. */
while (whitespace (*string))
string++;
/* Error if not at end of string. */
if (*string)
return (0);
if (result)
{
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) LDFLAGS=-lm make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
test.c: In function 'beyond':
test.c:159:3: warning: implicit declaration of function 'test_syntax_error' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
159 | test_syntax_error (_("argument expected\n"), NULL);
| ^~~~~~~~~~~~~~~~~
test.c: In function 'term':
test.c:262:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
262 | value = expr ();
| ^~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: At top level:
test.c:765:1: error: static declaration of 'expr' follows non-static declaration
765 | expr (void)
| ^~~~
test.c:262:15: note: previous implicit declaration of 'expr' with type 'int()'
262 | value = expr ();
| ^~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 104 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
test -f 'uname.c' || echo './'`uname.c; \
then mv ".deps/uname.Tpo" ".deps/uname.Po"; \
else rm -f ".deps/uname.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT chroot.o -MD -MP -MF ".deps/chroot.Tpo" \
-c -o chroot.o `test -f 'chroot.c' || echo './'`chroot.c; \
then mv ".deps/chroot.Tpo" ".deps/chroot.Po"; \
else rm -f ".deps/chroot.Tpo"; exit 1; \
fi
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT hostid.o -MD -MP -MF ".deps/hostid.Tpo" \
-c -o hostid.o `test -f 'hostid.c' || echo './'`hostid.c; \
then mv ".deps/hostid.Tpo" ".deps/hostid.Po"; \
else rm -f ".deps/hostid.Tpo"; exit 1; \
fi
test.c: In function 'beyond':
test.c:159:3: warning: implicit declaration of function 'test_syntax_error' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
159 | test_syntax_error (_("argument expected\n"), NULL);
| ^~~~~~~~~~~~~~~~~
test.c: In function 'term':
test.c:262:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
262 | value = expr ();
| ^~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: At top level:
test.c:765:1: error: static declaration of 'expr' follows non-static declaration
765 | expr (void)
| ^~~~
test.c:262:15: note: previous implicit declaration of 'expr' with type 'int()'
262 | value = expr ();
| ^~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:1: error: expected identifier or '(' before '{' token
241 | {
| ^
seq.c:319:1: error: expected identifier or '(' before '{' token
319 | {
| ^
seq.c: In function 'main':
seq.c:453:7: error: expected expression before 'else'
453 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 750,770p /home/peter/coreutils_src/src/test.c
while ((pos < argc) && strcmp (argv[pos], "-o") == 0)
{
advance (0);
value = TRUTH_OR (value, or ());
}
return (TRUE == value);
}
/*
* expr:
* or
*/
static int
expr (void)
{
if (pos >= argc)
beyond ();
return (FALSE ^ (or ())); /* Same with this. */
↓ 21 lines
while ((pos < argc) && strcmp (argv[pos], "-o") == 0)
{
advance (0);
value = TRUTH_OR (value, or ());
}
return (TRUE == value);
}
/*
* expr:
* or
*/
static int
expr (void)
{
if (pos >= argc)
beyond ();
return (FALSE ^ (or ())); /* Same with this. */
compile-bench> sed -n 100,120p /home/peter/coreutils_src/src/test.c #if defined (TEST_STANDALONE)
# define test_exit(val) exit (val)
#else
static jmp_buf test_exit_buf;
static int test_error_return = 0;
# define test_exit(val) test_error_return = val, longjmp (test_exit_buf, 1)
#endif /* !TEST_STANDALONE */
static int pos; /* The offset of the current argument in ARGV. */
static int argc; /* The number of arguments present in ARGV. */
static char **argv; /* The argument list. */
static int unop (int op);
static int binop (char *s);
static int unary_operator (void);
static int binary_operator (void);
static int two_arguments (void);
static int three_arguments (void);
static int posixtest (void);
↓ 20 lines
#if defined (TEST_STANDALONE) # define test_exit(val) exit (val) #else static jmp_buf test_exit_buf; static int test_error_return = 0; # define test_exit(val) test_error_return = val, longjmp (test_exit_buf, 1) #endif /* !TEST_STANDALONE */ static int pos; /* The offset of the current argument in ARGV. */ static int argc; /* The number of arguments present in ARGV. */ static char **argv; /* The argument list. */ static int unop (int op); static int binop (char *s); static int unary_operator (void); static int binary_operator (void); static int two_arguments (void); static int three_arguments (void); static int posixtest (void);
[empty output]
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
277 | sprintf (buffer, "%g", 1.0 + modf (fabs (min_val), &temp));
| ^~~~~
| )
seq.c:278:3: warning: data definition has no type or storage class
278 | width1 = strlen (buffer);
| ^~~~~~
seq.c:278:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:278:3: error: redefinition of 'width1'
seq.c:261:3: note: previous definition of 'width1' with type 'int'
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:279:3: error: expected identifier or '(' before 'if'
279 | if (width1 == 1)
| ^~
seq.c:281:3: error: expected identifier or '(' before 'else'
281 | else
| ^~~~
seq.c:292:19: error: expected ')' before string constant
292 | sprintf (buffer, "%g", 1.0 + modf (fabs (step), &temp));
| ^~~~~
| )
seq.c:293:3: warning: data definition has no type or storage class
293 | width2 = strlen (buffer);
| ^~~~~~
seq.c:293:3: warning: type defaults to 'int' in declaration of 'width2' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:294:3: error: expected identifier or '(' before 'if'
294 | if (width2 == 1)
| ^~
seq.c:296:3: error: expected identifier or '(' before 'else'
296 | else
| ^~~~
seq.c:306:3: warning: data definition has no type or storage class
306 | frac_width = width1 > width2 ? width1 : width2;
| ^~~~~~~~~~
seq.c:306:3: warning: type defaults to 'int' in declaration of 'frac_width' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:306:16: error: initializer element is not constant
306 | frac_width = width1 > width2 ? width1 : width2;
| ^~~~~~
seq.c:308:3: error: expected identifier or '(' before 'if'
308 | if (frac_width)
| ^~
seq.c:310:3: error: expected identifier or '(' before 'else'
310 | else
| ^~~~
seq.c:313:3: error: expected identifier or '(' before 'return'
313 | return buffer;
| ^~~~~~
seq.c:314:1: error: expected identifier or '(' before '}' token
314 | }
| ^
seq.c:320:3: error: expected identifier or '(' before 'return'
320 | return "%g";
| ^~~~~~
seq.c:321:1: error: expected identifier or '(' before '}' token
321 | }
| ^
seq.c: In function 'main':
seq.c:451:7: error: expected expression before 'else'
451 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 90 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
277 | sprintf (buffer, "%g", 1.0 + modf (fabs (min_val), &temp));
| ^~~~~
| )
seq.c:278:3: warning: data definition has no type or storage class
278 | width1 = strlen (buffer);
| ^~~~~~
seq.c:278:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:278:3: error: redefinition of 'width1'
seq.c:261:3: note: previous definition of 'width1' with type 'int'
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:279:3: error: expected identifier or '(' before 'if'
279 | if (width1 == 1)
| ^~
seq.c:281:3: error: expected identifier or '(' before 'else'
281 | else
| ^~~~
seq.c:292:19: error: expected ')' before string constant
292 | sprintf (buffer, "%g", 1.0 + modf (fabs (step), &temp));
| ^~~~~
| )
seq.c:293:3: warning: data definition has no type or storage class
293 | width2 = strlen (buffer);
| ^~~~~~
seq.c:293:3: warning: type defaults to 'int' in declaration of 'width2' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:294:3: error: expected identifier or '(' before 'if'
294 | if (width2 == 1)
| ^~
seq.c:296:3: error: expected identifier or '(' before 'else'
296 | else
| ^~~~
seq.c:306:3: warning: data definition has no type or storage class
306 | frac_width = width1 > width2 ? width1 : width2;
| ^~~~~~~~~~
seq.c:306:3: warning: type defaults to 'int' in declaration of 'frac_width' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:306:16: error: initializer element is not constant
306 | frac_width = width1 > width2 ? width1 : width2;
| ^~~~~~
seq.c:308:3: error: expected identifier or '(' before 'if'
308 | if (frac_width)
| ^~
seq.c:310:3: error: expected identifier or '(' before 'else'
310 | else
| ^~~~
seq.c:313:3: error: expected identifier or '(' before 'return'
313 | return buffer;
| ^~~~~~
seq.c:314:1: error: expected identifier or '(' before '}' token
314 | }
| ^
seq.c:320:3: error: expected identifier or '(' before 'return'
320 | return "%g";
| ^~~~~~
seq.c:321:1: error: expected identifier or '(' before '}' token
321 | }
| ^
seq.c: In function 'main':
seq.c:451:7: error: expected expression before 'else'
451 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 260,320p /home/peter/coreutils_src/src/seq.c return "%g";
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
}
full_width = width1;
sprintf (buffer, "%g", 1.0 + modf (fabs (min_val), &temp));
width1 = strlen (buffer);
if (width1 == 1)
width1 = 0;
else
{
if (buffer[0] != '1'
/* FIXME: assumes that decimal_point is a single character
string. */
|| buffer[1] != decimal_point[0]
|| buffer[2 + strspn (&buffer[2], "0123456789")] != '\0')
return "%g";
width1 -= 2;
}
sprintf (buffer, "%g", 1.0 + modf (fabs (step), &temp));
width2 = strlen (buffer);
if (width2 == 1)
width2 = 0;
else
{
if (buffer[0] != '1'
/* FIXME: assumes that decimal_point is a single character
string. */
|| buffer[1] != decimal_point[0]
|| buffer[2 + strspn (&buffer[2], "0123456789")] != '\0')
return "%g";
width2 -= 2;
}
frac_width = width1 > width2 ? width1 : width2;
if (frac_width)
sprintf (buffer, "%%0%d.%df", full_width + 1 + frac_width, frac_width);
else
sprintf (buffer, "%%0%dg", full_width);
return buffer;
}
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
↓ 62 lines
return "%g";
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
}
full_width = width1;
sprintf (buffer, "%g", 1.0 + modf (fabs (min_val), &temp));
width1 = strlen (buffer);
if (width1 == 1)
width1 = 0;
else
{
if (buffer[0] != '1'
/* FIXME: assumes that decimal_point is a single character
string. */
|| buffer[1] != decimal_point[0]
|| buffer[2 + strspn (&buffer[2], "0123456789")] != '\0')
return "%g";
width1 -= 2;
}
sprintf (buffer, "%g", 1.0 + modf (fabs (step), &temp));
width2 = strlen (buffer);
if (width2 == 1)
width2 = 0;
else
{
if (buffer[0] != '1'
/* FIXME: assumes that decimal_point is a single character
string. */
|| buffer[1] != decimal_point[0]
|| buffer[2 + strspn (&buffer[2], "0123456789")] != '\0')
return "%g";
width2 -= 2;
}
frac_width = width1 > width2 ? width1 : width2;
if (frac_width)
sprintf (buffer, "%%0%d.%df", full_width + 1 + frac_width, frac_width);
else
sprintf (buffer, "%%0%dg", full_width);
return buffer;
}
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) LDFLAGS=-lm make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
eter/coreutils_src/src/test.c:508: undefined reference to `test_syntax_error'
/usr/bin/ld: test.o:/home/peter/coreutils_src/src/test.c:792: more undefined references to `test_syntax_error' follow
/usr/bin/ld: test.o: in function `three_arguments':
/home/peter/coreutils_src/src/test.c:816: undefined reference to `expr'
/usr/bin/ld: test.o: in function `posixtest':
/home/peter/coreutils_src/src/test.c:859: undefined reference to `expr'
/usr/bin/ld: test.o: in function `main':
/home/peter/coreutils_src/src/test.c:1023: undefined reference to `test_syntax_error'
/usr/bin/ld: /home/peter/coreutils_src/src/test.c:1009: undefined reference to `test_syntax_error'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1075: test] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 106 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
eter/coreutils_src/src/test.c:508: undefined reference to `test_syntax_error'
/usr/bin/ld: test.o:/home/peter/coreutils_src/src/test.c:792: more undefined references to `test_syntax_error' follow
/usr/bin/ld: test.o: in function `three_arguments':
/home/peter/coreutils_src/src/test.c:816: undefined reference to `expr'
/usr/bin/ld: test.o: in function `posixtest':
/home/peter/coreutils_src/src/test.c:859: undefined reference to `expr'
/usr/bin/ld: test.o: in function `main':
/home/peter/coreutils_src/src/test.c:1023: undefined reference to `test_syntax_error'
/usr/bin/ld: /home/peter/coreutils_src/src/test.c:1009: undefined reference to `test_syntax_error'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1075: test] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c: In function 'main':
tee.c:148:10: warning: implicit declaration of function 'tee_renamed' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
148 | errs = tee_renamed(argc - optind, (const char **) &argv[optind]);
| ^~~~~~~~~~~
tee.c: At top level:
tee.c:160:1: error: expected identifier or '(' before '{' token
160 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 500,530p /home/peter/coreutils_src/src/test.c case 'o':
if ('t' == argv[op][2] && '\000' == argv[op][3])
{
/* ot - older than */
time_t lt, rt;
int le, re;
pos += 3;
if (l_is_l || r_is_l)
test_syntax_error (_("-ot does not accept -l\n"), NULL);
le = age_of (argv[op - 1], <);
re = age_of (argv[op + 1], &rt);
return le < re || (re == 0 && lt < rt);
}
break;
}
test_syntax_error (_("unknown binary operator"), argv[op]);
}
if (argv[op][0] == '=' && !argv[op][1])
{
value = (strcmp (argv[pos], argv[pos + 2]) == 0);
pos += 3;
return (TRUE == value);
}
if (strcmp (argv[op], "!=") == 0)
{
value = (strcmp (argv[pos], argv[pos + 2]) != 0);
pos += 3;
return (TRUE == value);
}
↓ 32 lines
case 'o':
if ('t' == argv[op][2] && '\000' == argv[op][3])
{
/* ot - older than */
time_t lt, rt;
int le, re;
pos += 3;
if (l_is_l || r_is_l)
test_syntax_error (_("-ot does not accept -l\n"), NULL);
le = age_of (argv[op - 1], <);
re = age_of (argv[op + 1], &rt);
return le < re || (re == 0 && lt < rt);
}
break;
}
test_syntax_error (_("unknown binary operator"), argv[op]);
}
if (argv[op][0] == '=' && !argv[op][1])
{
value = (strcmp (argv[pos], argv[pos + 2]) == 0);
pos += 3;
return (TRUE == value);
}
if (strcmp (argv[op], "!=") == 0)
{
value = (strcmp (argv[pos], argv[pos + 2]) != 0);
pos += 3;
return (TRUE == value);
}
[empty output]
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
| ^~~~~~~~~~~~~
test.c: In function 'two_arguments':
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:753:5: error: expected expression before '}' token
753 | }
| ^
test.c: In function 'binary_operator':
make[3]: *** Waiting for unfinished jobs....
test.c:760:1: error: invalid storage class for function 'three_arguments'
760 | three_arguments (void)
| ^~~~~~~~~~~~~~~
test.c:783:1: error: invalid storage class for function 'posixtest'
783 | posixtest (void)
| ^~~~~~~~~
test.c: In function 'main':
test.c:968:5: error: expected expression before '}' token
968 | }
| ^
test.c: In function 'binary_operator':
test.c:983:1: error: expected declaration or statement at end of input
983 | }
| ^
test.c:983:1: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 96 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
| ^~~~~~~~~~~~~
test.c: In function 'two_arguments':
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c:753:5: error: expected expression before '}' token
753 | }
| ^
test.c: In function 'binary_operator':
make[3]: *** Waiting for unfinished jobs....
test.c:760:1: error: invalid storage class for function 'three_arguments'
760 | three_arguments (void)
| ^~~~~~~~~~~~~~~
test.c:783:1: error: invalid storage class for function 'posixtest'
783 | posixtest (void)
| ^~~~~~~~~
test.c: In function 'main':
test.c:968:5: error: expected expression before '}' token
968 | }
| ^
test.c: In function 'binary_operator':
test.c:983:1: error: expected declaration or statement at end of input
983 | }
| ^
test.c:983:1: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 740,760p /home/peter/coreutils_src/src/test.c two_arguments (void)
{
int value;
if (STREQ (argv[pos], "!"))
value = ! one_argument (argv[pos+1]);
else if (argv[pos][0] == '-'
&& argv[pos][1] != '\0'
&& argv[pos][2] == '\0')
{
if (unop (argv[pos][1]))
value = unary_operator ();
else
}
else
beyond ();
return (value);
}
static int
three_arguments (void)
↓ 22 lines
two_arguments (void)
{
int value;
if (STREQ (argv[pos], "!"))
value = ! one_argument (argv[pos+1]);
else if (argv[pos][0] == '-'
&& argv[pos][1] != '\0'
&& argv[pos][2] == '\0')
{
if (unop (argv[pos][1]))
value = unary_operator ();
else
}
else
beyond ();
return (value);
}
static int
three_arguments (void)
[empty output]
compile-bench> sed -n 760,800p /home/peter/coreutils_src/src/test.c /* This is an implementation of a Posix.2 proposal by David Korn. */
static int
posixtest (void)
{
int value;
switch (argc - 1) /* one extra passed in */
{
case 0:
value = FALSE;
pos = argc;
break;
case 1:
value = one_argument (argv[1]);
pos = argc;
break;
case 2:
value = two_arguments ();
pos = argc;
break;
case 3:
value = three_arguments ();
break;
case 4:
if (STREQ (argv[pos], "!"))
{
advance (1);
value = !three_arguments ();
break;
}
/* FALLTHROUGH */
case 5:
default:
value = expr ();
}
return (value);
↓ 42 lines
/* This is an implementation of a Posix.2 proposal by David Korn. */
static int
posixtest (void)
{
int value;
switch (argc - 1) /* one extra passed in */
{
case 0:
value = FALSE;
pos = argc;
break;
case 1:
value = one_argument (argv[1]);
pos = argc;
break;
case 2:
value = two_arguments ();
pos = argc;
break;
case 3:
value = three_arguments ();
break;
case 4:
if (STREQ (argv[pos], "!"))
{
advance (1);
value = !three_arguments ();
break;
}
/* FALLTHROUGH */
case 5:
default:
value = expr ();
}
return (value);
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 98 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:241:3: error: expected identifier or '(' before 'static'
241 | static char buffer[256];
| ^~~~~~
seq.c:249:3: error: expected identifier or '(' before 'if'
249 | if (first > last)
| ^~
seq.c:253:3: error: expected identifier or '(' before 'else'
253 | else
| ^~~~
seq.c:258:19: error: expected ')' before string constant
258 | sprintf (buffer, "%g", rint (max_val));
| ^~~~~
| )
seq.c:259:3: error: expected identifier or '(' before 'if'
259 | if (buffer[strspn (buffer, "0123456789")] != '\0')
| ^~
seq.c:261:3: warning: data definition has no type or storage class
261 | width1 = strlen (buffer);
| ^~~~~~
seq.c:261:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:261:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
261 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:263:3: error: expected identifier or '(' before 'if'
263 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:410:7: error: expected expression before 'else'
410 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> head -100 /home/peter/coreutils_src/src/seq.c /* seq - print sequence of numbers to standard output.
Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Ulrich Drepper. */
#include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
#include "xstrtod.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "seq"
#define AUTHORS "Ulrich Drepper"
/* If nonzero print all number with equal width. */
static int equal_width;
/* The name that this program was run with. */
char *program_name;
/* The string used to separate two numbers. */
static char *separator;
/* The string output after all numbers have been output.
Usually "\n" or "\0". */
/* FIXME: make this an option. */
static char *terminator = "\n";
/* The representation of the decimal point in the current locale.
Always "." if the localeconv function is not supported. */
static char *decimal_point = ".";
/* The starting number. */
static double first;
/* The increment. */
static double step;
/* The last number. */
static double last;
static struct option const long_options[] =
{
{ "equal-width", no_argument, NULL, 'w'},
{ "format", required_argument, NULL, 'f'},
{ "separator", required_argument, NULL, 's'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
{ NULL, 0, NULL, 0}
};
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("\
Usage: %s [OPTION]... LAST\n\
or: %s [OPTION]... FIRST LAST\n\
or: %s [OPTION]... FIRST INCREMENT LAST\n\
"), program_name, program_name, program_name);
fputs (_("\
Print numbers from FIRST to LAST, in steps of INCREMENT.\n\
\n\
-f, --format=FORMAT use printf style floating-point FORMAT (default: %g)\n\
-s, --separator=STRING use STRING to separate numbers (default: \\n)\n\
-w, --equal-width equalize width by padding with leading zeroes\n\
"), stdout);
fputs (HELP_OPTION_DESCRIPTION, stdout);
fputs (VERSION_OPTION_DESCRIPTION, stdout);
fputs (_("\
\n\
If FIRST or INCREMENT is omitted, it defaults to 1.\n\
FIRST, INCREMENT, and LAST are interpreted as floating point values.\n\
INCREMENT should be positive if FIRST is smaller than LAST, and negative\n\
↓ 101 lines
/* seq - print sequence of numbers to standard output.
Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Ulrich Drepper. */
#include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
#include "xstrtod.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "seq"
#define AUTHORS "Ulrich Drepper"
/* If nonzero print all number with equal width. */
static int equal_width;
/* The name that this program was run with. */
char *program_name;
/* The string used to separate two numbers. */
static char *separator;
/* The string output after all numbers have been output.
Usually "\n" or "\0". */
/* FIXME: make this an option. */
static char *terminator = "\n";
/* The representation of the decimal point in the current locale.
Always "." if the localeconv function is not supported. */
static char *decimal_point = ".";
/* The starting number. */
static double first;
/* The increment. */
static double step;
/* The last number. */
static double last;
static struct option const long_options[] =
{
{ "equal-width", no_argument, NULL, 'w'},
{ "format", required_argument, NULL, 'f'},
{ "separator", required_argument, NULL, 's'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
{ NULL, 0, NULL, 0}
};
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("\
Usage: %s [OPTION]... LAST\n\
or: %s [OPTION]... FIRST LAST\n\
or: %s [OPTION]... FIRST INCREMENT LAST\n\
"), program_name, program_name, program_name);
fputs (_("\
Print numbers from FIRST to LAST, in steps of INCREMENT.\n\
\n\
-f, --format=FORMAT use printf style floating-point FORMAT (default: %g)\n\
-s, --separator=STRING use STRING to separate numbers (default: \\n)\n\
-w, --equal-width equalize width by padding with leading zeroes\n\
"), stdout);
fputs (HELP_OPTION_DESCRIPTION, stdout);
fputs (VERSION_OPTION_DESCRIPTION, stdout);
fputs (_("\
\n\
If FIRST or INCREMENT is omitted, it defaults to 1.\n\
FIRST, INCREMENT, and LAST are interpreted as floating point values.\n\
INCREMENT should be positive if FIRST is smaller than LAST, and negative\n\
compile-bench> sed -n 240,310p /home/peter/coreutils_src/src/seq.c static char *
static char buffer[256];
int full_width;
int frac_width;
int width1, width2;
double max_val;
double min_val;
double temp;
if (first > last)
{
max_val = first;
}
else
{
min_val = first;
}
sprintf (buffer, "%g", rint (max_val));
if (buffer[strspn (buffer, "0123456789")] != '\0')
return "%g";
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
}
#endif
int
main (int argc, char **argv)
{
int errs;
int optc;
int step_is_set;
/* The printf(3) format used for output. */
char *format_str = NULL;
program_name = argv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
equal_width = 0;
separator = "\n";
first = 1.0;
step_is_set = 0;
/* Figure out the locale's idea of a decimal point. */
#if HAVE_LOCALECONV
{
struct lconv *locale;
↓ 71 lines
static char *
static char buffer[256];
int full_width;
int frac_width;
int width1, width2;
double max_val;
double min_val;
double temp;
if (first > last)
{
max_val = first;
}
else
{
min_val = first;
}
sprintf (buffer, "%g", rint (max_val));
if (buffer[strspn (buffer, "0123456789")] != '\0')
return "%g";
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
}
#endif
int
main (int argc, char **argv)
{
int errs;
int optc;
int step_is_set;
/* The printf(3) format used for output. */
char *format_str = NULL;
program_name = argv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
equal_width = 0;
separator = "\n";
first = 1.0;
step_is_set = 0;
/* Figure out the locale's idea of a decimal point. */
#if HAVE_LOCALECONV
{
struct lconv *locale;
[empty output]
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
icit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:240:3: warning: data definition has no type or storage class
240 | width1 = strlen (buffer);
| ^~~~~~
seq.c:240:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:240:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
240 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:242:3: error: expected identifier or '(' before 'if'
242 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:391:7: error: expected expression before 'else'
391 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 98 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
icit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c:240:3: warning: data definition has no type or storage class
240 | width1 = strlen (buffer);
| ^~~~~~
seq.c:240:3: warning: type defaults to 'int' in declaration of 'width1' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:240:20: error: 'buffer' undeclared here (not in a function); did you mean 'setbuffer'?
240 | width1 = strlen (buffer);
| ^~~~~~
| setbuffer
seq.c:242:3: error: expected identifier or '(' before 'if'
242 | if (min_val < 0.0)
| ^~
seq.c: In function 'main':
seq.c:391:7: error: expected expression before 'else'
391 | else
| ^~~~
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 200,270p /home/peter/coreutils_src/src/seq.c break;
fputs (separator, stdout);
printf (fmt, x);
}
}
else
{
int i;
if (step <= 0)
{
error (0, 0,
_("when the starting value is smaller than the limit,\n\
the increment must be positive"));
usage (EXIT_FAILURE);
}
printf (fmt, first);
for (i = 1; /* empty */; i++)
{
double x = first + i * step;
if (x > last)
break;
fputs (separator, stdout);
printf (fmt, x);
}
}
fputs (terminator, stdout);
return 0;
}
#if HAVE_RINT && HAVE_MODF && HAVE_FLOOR
/* Return a printf-style format string with which all selected numbers
will format to strings of the same width. */
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
static char buffer[256]; int full_width; int frac_width; int width1, width2; double max_val; double min_val; double temp;
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
static char buffer[256]; int full_width; int frac_width; int width1, width2; double max_val; double min_val; double temp;
}
#endif
int
main (int argc, char **argv)
{
int errs;
int optc;
int step_is_set;
↓ 72 lines
break;
fputs (separator, stdout);
printf (fmt, x);
}
}
else
{
int i;
if (step <= 0)
{
error (0, 0,
_("when the starting value is smaller than the limit,\n\
the increment must be positive"));
usage (EXIT_FAILURE);
}
printf (fmt, first);
for (i = 1; /* empty */; i++)
{
double x = first + i * step;
if (x > last)
break;
fputs (separator, stdout);
printf (fmt, x);
}
}
fputs (terminator, stdout);
return 0;
}
#if HAVE_RINT && HAVE_MODF && HAVE_FLOOR
/* Return a printf-style format string with which all selected numbers
will format to strings of the same width. */
width1 = strlen (buffer);
if (min_val < 0.0)
{
double int_min_val = rint (min_val);
sprintf (buffer, "%g", int_min_val);
if (buffer[strspn (buffer, "-0123456789")] != '\0')
return "%g";
static char buffer[256]; int full_width; int frac_width; int width1, width2; double max_val; double min_val; double temp;
/* On some systems, `seq -w -.1 .1 .1' results in buffer being `-0'.
On others, it is just `0'. The former results in better output. */
width2 = (int_min_val == 0 ? 2 : strlen (buffer));
width1 = width1 > width2 ? width1 : width2;
static char *
/* We cannot compute the needed information to determine the correct
answer. So we simply return a value that works for all cases. */
return "%g";
static char buffer[256]; int full_width; int frac_width; int width1, width2; double max_val; double min_val; double temp;
}
#endif
int
main (int argc, char **argv)
{
int errs;
int optc;
int step_is_set;
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) LDFLAGS=-lm make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
iting for unfinished jobs....
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c: In function 'print_numbers':
seq.c:222:3: error: expected expression before 'char'
222 | char *format_str = NULL;
| ^~~~
seq.c:224:18: error: 'argv' undeclared (first use in this function)
224 | program_name = argv[0];
| ^~~~
seq.c:224:18: note: each undeclared identifier is reported only once for each function it appears in
seq.c:234:3: error: 'step_is_set' undeclared (first use in this function)
234 | step_is_set = 0;
| ^~~~~~~~~~~
seq.c:251:19: error: 'argc' undeclared (first use in this function)
251 | while (optind < argc)
| ^~~~
seq.c:254:16: error: 'optc' undeclared (first use in this function)
254 | && ((optc = argv[optind][1]) == decimal_point[0]
| ^~~~
seq.c:271:11: error: 'format_str' undeclared (first use in this function)
271 | format_str = optarg;
| ^~~~~~~~~~
seq.c:340:7: error: expected expression before 'else'
340 | else
| ^~~~
seq.c:344:3: error: 'errs' undeclared (first use in this function)
344 | errs = print_numbers (format_str);
| ^~~~
seq.c:347:1: error: expected declaration or statement at end of input
347 | }
| ^
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 121 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
iting for unfinished jobs....
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
seq.c: In function 'print_numbers':
seq.c:222:3: error: expected expression before 'char'
222 | char *format_str = NULL;
| ^~~~
seq.c:224:18: error: 'argv' undeclared (first use in this function)
224 | program_name = argv[0];
| ^~~~
seq.c:224:18: note: each undeclared identifier is reported only once for each function it appears in
seq.c:234:3: error: 'step_is_set' undeclared (first use in this function)
234 | step_is_set = 0;
| ^~~~~~~~~~~
seq.c:251:19: error: 'argc' undeclared (first use in this function)
251 | while (optind < argc)
| ^~~~
seq.c:254:16: error: 'optc' undeclared (first use in this function)
254 | && ((optc = argv[optind][1]) == decimal_point[0]
| ^~~~
seq.c:271:11: error: 'format_str' undeclared (first use in this function)
271 | format_str = optarg;
| ^~~~~~~~~~
seq.c:340:7: error: expected expression before 'else'
340 | else
| ^~~~
seq.c:344:3: error: 'errs' undeclared (first use in this function)
344 | errs = print_numbers (format_str);
| ^~~~
seq.c:347:1: error: expected declaration or statement at end of input
347 | }
| ^
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> tail -40 /home/peter/coreutils_src/src/seq.c
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
first = last;
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
step = last;
step_is_set = 1;
last = scan_double_arg (argv[optind++]);
}
}
if (format_str != NULL && equal_width)
{
error (0, 0, _("\
format string may not be specified when printing equal width strings"));
usage (EXIT_FAILURE);
}
if (!step_is_set)
{
step = first <= last ? 1.0 : -1.0;
}
if (format_str == NULL)
{
if (equal_width)
else
format_str = "%g";
}
errs = print_numbers (format_str);
exit (errs);
}
↓ 40 lines
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
first = last;
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
step = last;
step_is_set = 1;
last = scan_double_arg (argv[optind++]);
}
}
if (format_str != NULL && equal_width)
{
error (0, 0, _("\
format string may not be specified when printing equal width strings"));
usage (EXIT_FAILURE);
}
if (!step_is_set)
{
step = first <= last ? 1.0 : -1.0;
}
if (format_str == NULL)
{
if (equal_width)
else
format_str = "%g";
}
errs = print_numbers (format_str);
exit (errs);
}
compile-bench> head -40 /home/peter/coreutils_src/src/seq.c /* seq - print sequence of numbers to standard output.
Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Ulrich Drepper. */
#include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
#include "xstrtod.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "seq"
#define AUTHORS "Ulrich Drepper"
/* If nonzero print all number with equal width. */
static int equal_width;
/* The name that this program was run with. */
↓ 41 lines
/* seq - print sequence of numbers to standard output. Copyright (C) 1994-2003 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 2, 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Written by Ulrich Drepper. */ #include <config.h> #include <getopt.h> #include <math.h> #include <stdio.h> #include <sys/types.h> #include "system.h" #include "closeout.h" #include "error.h" #include "xstrtol.h" #include "xstrtod.h" /* The official name of this program (e.g., no `g' prefix). */ #define PROGRAM_NAME "seq" #define AUTHORS "Ulrich Drepper" /* If nonzero print all number with equal width. */ static int equal_width; /* The name that this program was run with. */
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
or storage class
38 | last = scan_double_arg (argv[optind++]);
| ^~~~
seq.c:38:3: warning: type defaults to 'int' in declaration of 'last' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:38:10: warning: implicit declaration of function 'scan_double_arg' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
38 | last = scan_double_arg (argv[optind++]);
| ^~~~~~~~~~~~~~~
seq.c:38:27: error: 'argv' undeclared here (not in a function)
38 | last = scan_double_arg (argv[optind++]);
| ^~~~
seq.c:40:3: error: expected identifier or '(' before 'if'
40 | if (optind < argc)
| ^~
seq.c:54:3: error: expected identifier or '(' before 'if'
54 | if (format_str != NULL && equal_width)
| ^~
seq.c:61:3: error: expected identifier or '(' before 'if'
61 | if (!step_is_set)
| ^~
seq.c:66:3: error: expected identifier or '(' before 'if'
66 | if (format_str == NULL)
| ^~
seq.c:73:3: warning: data definition has no type or storage class
73 | errs = print_numbers (format_str);
| ^~~~
seq.c:73:3: warning: type defaults to 'int' in declaration of 'errs' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:73:10: warning: implicit declaration of function 'print_numbers' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
73 | errs = print_numbers (format_str);
| ^~~~~~~~~~~~~
seq.c:73:25: error: 'format_str' undeclared here (not in a function)
73 | errs = print_numbers (format_str);
| ^~~~~~~~~~
seq.c:75:3: warning: data definition has no type or storage class
75 | exit (errs);
| ^~~~
seq.c:75:3: warning: type defaults to 'int' in declaration of 'exit' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:75:3: warning: parameter names (without types) in function declaration
seq.c:75:3: error: conflicting types for 'exit'; have 'int()'
In file included from system.h:136,
from seq.c:26:
/usr/include/stdlib.h:624:13: note: previous declaration of 'exit' with type 'void(int)'
624 | extern void exit (int __status) __THROW __attribute__ ((__noreturn__));
| ^~~~
seq.c:76:1: error: expected identifier or '(' before '}' token
76 | }
| ^
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 76 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
or storage class
38 | last = scan_double_arg (argv[optind++]);
| ^~~~
seq.c:38:3: warning: type defaults to 'int' in declaration of 'last' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:38:10: warning: implicit declaration of function 'scan_double_arg' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
38 | last = scan_double_arg (argv[optind++]);
| ^~~~~~~~~~~~~~~
seq.c:38:27: error: 'argv' undeclared here (not in a function)
38 | last = scan_double_arg (argv[optind++]);
| ^~~~
seq.c:40:3: error: expected identifier or '(' before 'if'
40 | if (optind < argc)
| ^~
seq.c:54:3: error: expected identifier or '(' before 'if'
54 | if (format_str != NULL && equal_width)
| ^~
seq.c:61:3: error: expected identifier or '(' before 'if'
61 | if (!step_is_set)
| ^~
seq.c:66:3: error: expected identifier or '(' before 'if'
66 | if (format_str == NULL)
| ^~
seq.c:73:3: warning: data definition has no type or storage class
73 | errs = print_numbers (format_str);
| ^~~~
seq.c:73:3: warning: type defaults to 'int' in declaration of 'errs' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:73:10: warning: implicit declaration of function 'print_numbers' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
73 | errs = print_numbers (format_str);
| ^~~~~~~~~~~~~
seq.c:73:25: error: 'format_str' undeclared here (not in a function)
73 | errs = print_numbers (format_str);
| ^~~~~~~~~~
seq.c:75:3: warning: data definition has no type or storage class
75 | exit (errs);
| ^~~~
seq.c:75:3: warning: type defaults to 'int' in declaration of 'exit' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
seq.c:75:3: warning: parameter names (without types) in function declaration
seq.c:75:3: error: conflicting types for 'exit'; have 'int()'
In file included from system.h:136,
from seq.c:26:
/usr/include/stdlib.h:624:13: note: previous declaration of 'exit' with type 'void(int)'
624 | extern void exit (int __status) __THROW __attribute__ ((__noreturn__));
| ^~~~
seq.c:76:1: error: expected identifier or '(' before '}' token
76 | }
| ^
make[3]: *** [Makefile:1263: seq.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 20,80p /home/peter/coreutils_src/src/seq.c #include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
}
if (format_str && !valid_format (format_str))
{
error (0, 0, _("invalid format string: `%s'"), format_str);
usage (EXIT_FAILURE);
}
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
first = last;
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
step = last;
step_is_set = 1;
last = scan_double_arg (argv[optind++]);
}
}
if (format_str != NULL && equal_width)
{
error (0, 0, _("\
format string may not be specified when printing equal width strings"));
usage (EXIT_FAILURE);
}
if (!step_is_set)
{
step = first <= last ? 1.0 : -1.0;
}
if (format_str == NULL)
{
if (equal_width)
else
format_str = "%g";
}
errs = print_numbers (format_str);
exit (errs);
}
↓ 58 lines
#include <config.h>
#include <getopt.h>
#include <math.h>
#include <stdio.h>
#include <sys/types.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
#include "xstrtol.h"
}
if (format_str && !valid_format (format_str))
{
error (0, 0, _("invalid format string: `%s'"), format_str);
usage (EXIT_FAILURE);
}
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
first = last;
last = scan_double_arg (argv[optind++]);
if (optind < argc)
{
step = last;
step_is_set = 1;
last = scan_double_arg (argv[optind++]);
}
}
if (format_str != NULL && equal_width)
{
error (0, 0, _("\
format string may not be specified when printing equal width strings"));
usage (EXIT_FAILURE);
}
if (!step_is_set)
{
step = first <= last ? 1.0 : -1.0;
}
if (format_str == NULL)
{
if (equal_width)
else
format_str = "%g";
}
errs = print_numbers (format_str);
exit (errs);
}
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 97 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
then mv ".deps/true.Tpo" ".deps/true.Po"; \
else rm -f ".deps/true.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c:706:1: error: invalid storage class for function 'or'
706 | or (void)
| ^~
test.c:715:1: error: invalid storage class for function 'binop'
715 | binop (char *s)
| ^~~~~
test.c:725:1: error: invalid storage class for function 'unop'
725 | unop (int op)
| ^~~~
test.c:731:1: error: invalid storage class for function 'one_argument'
731 | one_argument (const char *s)
| ^~~~~~~~~~~~
test.c:740:1: error: expected identifier or '(' before '{' token
740 | {
| ^
test.c: In function 'main':
test.c:906:5: error: expected expression before '}' token
906 | }
| ^
test.c: In function 'binary_operator':
test.c:921:1: error: expected declaration or statement at end of input
921 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> head -50 /home/peter/coreutils_src/src/test.c /* GNU test program (ksb and mjb) */
/* Modified to run with the GNU shell by bfox. */
/* Copyright (C) 1987-2003 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
Bash 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 2, or (at your option) any later
version.
Bash 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get
the shell builtin version. */
/* #define TEST_STANDALONE */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "test"
#define TEST_STANDALONE 1
#if !defined (TEST_STANDALONE)
# include "shell.h"
# include "posixstat.h"
# include "filecntl.h"
#else /* TEST_STANDALONE */
# include "system.h"
# include "error.h"
# include "euidaccess.h"
# if !defined (S_IXUGO)
# define S_IXUGO 0111
# endif /* S_IXUGO */
# if defined (_POSIX_VERSION)
# include <limits.h>
# else /* !_POSIX_VERSION */
# include <sys/param.h>
↓ 51 lines
/* GNU test program (ksb and mjb) */ /* Modified to run with the GNU shell by bfox. */ /* Copyright (C) 1987-2003 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. Bash 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 2, or (at your option) any later version. Bash 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, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Define TEST_STANDALONE to get the /bin/test version. Otherwise, you get the shell builtin version. */ /* #define TEST_STANDALONE */ #include <config.h> #include <stdio.h> #include <sys/types.h> /* The official name of this program (e.g., no `g' prefix). */ #define PROGRAM_NAME "test" #define TEST_STANDALONE 1 #if !defined (TEST_STANDALONE) # include "shell.h" # include "posixstat.h" # include "filecntl.h" #else /* TEST_STANDALONE */ # include "system.h" # include "error.h" # include "euidaccess.h" # if !defined (S_IXUGO) # define S_IXUGO 0111 # endif /* S_IXUGO */ # if defined (_POSIX_VERSION) # include <limits.h> # else /* !_POSIX_VERSION */ # include <sys/param.h>
compile-bench> sed -n 700,730p /home/peter/coreutils_src/src/test.c /*
* or:
* and
* and '-o' or
*/
static int
or (void)
{
int value;
value = and ();
}
/* Return TRUE if S is one of the test command's binary operators. */
static int
binop (char *s)
{
return ((STREQ (s, "=")) || (STREQ (s, "!=")) || (STREQ (s, "-nt")) ||
(STREQ (s, "-ot")) || (STREQ (s, "-ef")) || (STREQ (s, "-eq")) ||
(STREQ (s, "-ne")) || (STREQ (s, "-lt")) || (STREQ (s, "-le")) ||
(STREQ (s, "-gt")) || (STREQ (s, "-ge")));
}
/* Return nonzero if OP is one of the test command's unary operators. */
static int
unop (int op)
{
return (member (op, "abcdefgkLhprsStuwxOGnz"));
}
static int
↓ 32 lines
/*
* or:
* and
* and '-o' or
*/
static int
or (void)
{
int value;
value = and ();
}
/* Return TRUE if S is one of the test command's binary operators. */
static int
binop (char *s)
{
return ((STREQ (s, "=")) || (STREQ (s, "!=")) || (STREQ (s, "-nt")) ||
(STREQ (s, "-ot")) || (STREQ (s, "-ef")) || (STREQ (s, "-eq")) ||
(STREQ (s, "-ne")) || (STREQ (s, "-lt")) || (STREQ (s, "-le")) ||
(STREQ (s, "-gt")) || (STREQ (s, "-ge")));
}
/* Return nonzero if OP is one of the test command's unary operators. */
static int
unop (int op)
{
return (member (op, "abcdefgkLhprsStuwxOGnz"));
}
static int
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
ter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT yes.o -MD -MP -MF ".deps/yes.Tpo" \
-c -o yes.o `test -f 'yes.c' || echo './'`yes.c; \
then mv ".deps/yes.Tpo" ".deps/yes.Po"; \
else rm -f ".deps/yes.Tpo"; exit 1; \
fi
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c: At top level:
test.c:709:1: error: expected identifier or '(' before '}' token
709 | }
| ^
test.c: In function 'main':
test.c:855:5: error: expected expression before '}' token
855 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 88 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
ter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT tty.o -MD -MP -MF ".deps/tty.Tpo" \
-c -o tty.o `test -f 'tty.c' || echo './'`tty.c; \
then mv ".deps/tty.Tpo" ".deps/tty.Po"; \
else rm -f ".deps/tty.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT whoami.o -MD -MP -MF ".deps/whoami.Tpo" \
-c -o whoami.o `test -f 'whoami.c' || echo './'`whoami.c; \
then mv ".deps/whoami.Tpo" ".deps/whoami.Po"; \
else rm -f ".deps/whoami.Tpo"; exit 1; \
fi
if gcc -DLOCALEDIR=\"/home/peter/result/share/locale\" -DSHAREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT yes.o -MD -MP -MF ".deps/yes.Tpo" \
-c -o yes.o `test -f 'yes.c' || echo './'`yes.c; \
then mv ".deps/yes.Tpo" ".deps/yes.Po"; \
else rm -f ".deps/yes.Tpo"; exit 1; \
fi
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c:687:1: error: invalid storage class for function 'and'
687 | and (void)
| ^~~
test.c: At top level:
test.c:709:1: error: expected identifier or '(' before '}' token
709 | }
| ^
test.c: In function 'main':
test.c:855:5: error: expected expression before '}' token
855 | }
| ^
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
test.c:118:12: warning: 'posixtest' used but never defined
118 | static int posixtest (void);
| ^~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 600,620p /home/peter/coreutils_src/src/test.c if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
return (TRUE == (S_ISFIFO (stat_buf.st_mode)));
#endif /* S_ISFIFO */
case 'L': /* Same as -h */
/*FALLTHROUGH*/
case 'h': /* File is a symbolic link? */
unary_advance ();
#ifndef S_ISLNK
return (FALSE);
#else
/* An empty filename is not a valid pathname. */
if ((argv[pos - 1][0] == '\0') ||
(lstat (argv[pos - 1], &stat_buf) < 0))
return (FALSE);
return (TRUE == (S_ISLNK (stat_buf.st_mode)));
#endif /* S_IFLNK */
↓ 21 lines
if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
return (TRUE == (S_ISFIFO (stat_buf.st_mode)));
#endif /* S_ISFIFO */
case 'L': /* Same as -h */
/*FALLTHROUGH*/
case 'h': /* File is a symbolic link? */
unary_advance ();
#ifndef S_ISLNK
return (FALSE);
#else
/* An empty filename is not a valid pathname. */
if ((argv[pos - 1][0] == '\0') ||
(lstat (argv[pos - 1], &stat_buf) < 0))
return (FALSE);
return (TRUE == (S_ISLNK (stat_buf.st_mode)));
#endif /* S_IFLNK */
compile-bench> sed -n 700,730p /home/peter/coreutils_src/src/test.c pos = argc;
}
else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
(argv[pos][0] == '('))
value = expr ();
else
return (value);
}
}
#if defined (TEST_STANDALONE)
# include "long-options.h"
# include "closeout.h"
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("\
Usage: %s EXPRESSION\n\
or: [ EXPRESSION ]\n\
or: %s OPTION\n\
"),
program_name, program_name);
fputs (_("\
Exit with the status determined by EXPRESSION.\n\
↓ 32 lines
pos = argc;
}
else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
(argv[pos][0] == '('))
value = expr ();
else
return (value);
}
}
#if defined (TEST_STANDALONE)
# include "long-options.h"
# include "closeout.h"
void
usage (int status)
{
if (status != 0)
fprintf (stderr, _("Try `%s --help' for more information.\n"),
program_name);
else
{
printf (_("\
Usage: %s EXPRESSION\n\
or: [ EXPRESSION ]\n\
or: %s OPTION\n\
"),
program_name, program_name);
fputs (_("\
Exit with the status determined by EXPRESSION.\n\
[empty output]
compile-bench> sed -n 610,680p /home/peter/coreutils_src/src/test.c
case 'g': /* File is setgid? */
unary_advance ();
#ifndef S_ISGID
return (FALSE);
#else
if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
return (TRUE == (0 != (stat_buf.st_mode & S_ISGID)));
#endif
case 'k': /* File has sticky bit set? */
unary_advance ();
if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
#ifndef S_ISVTX
/* This is not Posix, and is not defined on some Posix systems. */
return (FALSE);
#else
return (TRUE == (0 != (stat_buf.st_mode & S_ISVTX)));
#endif
case 't': /* File (fd) is a terminal? */
{
intmax_t fd;
advance (0);
if (pos < argc)
{
if (!isint (argv[pos], &fd))
integer_expected_error (_("after -t"));
advance (0);
}
else
{
fd = 1;
}
return (TRUE == (fd == (int) fd && isatty (fd)));
}
case 'n': /* True if arg has some length. */
unary_advance ();
return (TRUE == (argv[pos - 1][0] != 0));
case 'z': /* True if arg has no length. */
unary_advance ();
return (TRUE == (argv[pos - 1][0] == '\0'));
}
}
/*
* and:
* term
* term '-a' and
*/
static int
and (void)
{
int value;
value = term ();
while ((pos < argc) && strcmp (argv[pos], "-a") == 0)
{
advance (0);
value = TRUTH_AND (value, and ());
}
return (TRUE == value);
}
pos = argc;
}
↓ 71 lines
case 'g': /* File is setgid? */
unary_advance ();
#ifndef S_ISGID
return (FALSE);
#else
if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
return (TRUE == (0 != (stat_buf.st_mode & S_ISGID)));
#endif
case 'k': /* File has sticky bit set? */
unary_advance ();
if (stat (argv[pos - 1], &stat_buf) < 0)
return (FALSE);
#ifndef S_ISVTX
/* This is not Posix, and is not defined on some Posix systems. */
return (FALSE);
#else
return (TRUE == (0 != (stat_buf.st_mode & S_ISVTX)));
#endif
case 't': /* File (fd) is a terminal? */
{
intmax_t fd;
advance (0);
if (pos < argc)
{
if (!isint (argv[pos], &fd))
integer_expected_error (_("after -t"));
advance (0);
}
else
{
fd = 1;
}
return (TRUE == (fd == (int) fd && isatty (fd)));
}
case 'n': /* True if arg has some length. */
unary_advance ();
return (TRUE == (argv[pos - 1][0] != 0));
case 'z': /* True if arg has no length. */
unary_advance ();
return (TRUE == (argv[pos - 1][0] == '\0'));
}
}
/*
* and:
* term
* term '-a' and
*/
static int
and (void)
{
int value;
value = term ();
while ((pos < argc) && strcmp (argv[pos], "-a") == 0)
{
advance (0);
value = TRUTH_AND (value, and ());
}
return (TRUE == value);
}
pos = argc;
}
[empty output]
compile-bench> sed -n 740,800p /home/peter/coreutils_src/src/test.c program_name = margv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
#endif /* TEST_STANDALONE */
argv = margv;
if (margv[0] && strcmp (margv[0], "[") == 0)
{
/* Don't recognize --help or --version if POSIXLY_CORRECT is set. */
if (getenv ("POSIXLY_CORRECT") == NULL)
parse_long_options (argc, argv, PROGRAM_NAME, GNU_PACKAGE, VERSION,
AUTHORS, usage);
--margc;
if (margc < 2)
test_exit (SHELL_BOOLEAN (FALSE));
if (margv[margc] && strcmp (margv[margc], "]") != 0)
}
argc = margc;
pos = 1;
if (pos >= argc)
test_exit (SHELL_BOOLEAN (FALSE));
parse_long_options (argc, argv, PROGRAM_NAME, GNU_PACKAGE, VERSION,
AUTHORS, usage);
value = posixtest ();
if (pos != argc)
test_exit (SHELL_BOOLEAN (value));
}
↓ 40 lines
program_name = margv[0];
setlocale (LC_ALL, "");
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);
atexit (close_stdout);
#endif /* TEST_STANDALONE */
argv = margv;
if (margv[0] && strcmp (margv[0], "[") == 0)
{
/* Don't recognize --help or --version if POSIXLY_CORRECT is set. */
if (getenv ("POSIXLY_CORRECT") == NULL)
parse_long_options (argc, argv, PROGRAM_NAME, GNU_PACKAGE, VERSION,
AUTHORS, usage);
--margc;
if (margc < 2)
test_exit (SHELL_BOOLEAN (FALSE));
if (margv[margc] && strcmp (margv[margc], "]") != 0)
}
argc = margc;
pos = 1;
if (pos >= argc)
test_exit (SHELL_BOOLEAN (FALSE));
parse_long_options (argc, argv, PROGRAM_NAME, GNU_PACKAGE, VERSION,
AUTHORS, usage);
value = posixtest ();
if (pos != argc)
test_exit (SHELL_BOOLEAN (value));
}
[empty output]
compile-bench> cd /home/peter/coreutils_src && make -j$(nproc) LDFLAGS=-lm make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
AREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o true true.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o tty tty.o ../lib/libfetish.a ../lib/libfetish.a
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x1b): undefined reference to `main'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
gcc -g -O2 -lm -o whoami whoami.o ../lib/libfetish.a ../lib/libfetish.a
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 112 lines
make all-recursive
make[1]: Entering directory '/home/peter/coreutils_src'
Making all in lib
make[2]: Entering directory '/home/peter/coreutils_src/lib'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/lib'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/peter/coreutils_src/lib'
make[2]: Leaving directory '/home/peter/coreutils_src/lib'
Making all in src
make[2]: Entering directory '/home/peter/coreutils_src/src'
make all-am
make[3]: Entering directory '/home/peter/coreutils_src/src'
gcc -g -O2 -lm -o chgrp chgrp.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chown chown.o chown-core.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o chmod chmod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cp cp.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dd dd.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dircolors dircolors.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o du du.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ginstall install.o copy.o cp-hash.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o link link.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ln ln.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o dir ls.o ls-dir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o vdir ls.o ls-vdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o ls ls.o ls-ls.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkdir mkdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mkfifo mkfifo.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mknod mknod.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o mv mv.o copy.o cp-hash.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o readlink readlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rm rm.o remove.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o rmdir rmdir.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o shred shred.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o stat stat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o sync sync.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o touch touch.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o unlink unlink.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cat cat.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cksum cksum.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o comm comm.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o csplit csplit.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o cut cut.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o expand expand.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g
[command output truncated]
AREDIR=\"/home/peter/result/share\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../lib -I../lib -g -O2 -MT test.o -MD -MP -MF ".deps/test.Tpo" \
-c -o test.o `test -f 'test.c' || echo './'`test.c; \
then mv ".deps/test.Tpo" ".deps/test.Po"; \
else rm -f ".deps/test.Tpo"; exit 1; \
fi
gcc -g -O2 -lm -o true true.o ../lib/libfetish.a ../lib/libfetish.a
gcc -g -O2 -lm -o tty tty.o ../lib/libfetish.a ../lib/libfetish.a
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':
(.text+0x1b): undefined reference to `main'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1033: seq] Error 1
make[3]: *** Waiting for unfinished jobs....
gcc -g -O2 -lm -o whoami whoami.o ../lib/libfetish.a ../lib/libfetish.a
tee.c:159:1: error: expected identifier or '(' before '{' token
159 | {
| ^
make[3]: *** [Makefile:1263: tee.o] Error 1
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 150,180p /home/peter/coreutils_src/src/tee.c
exit (errs);
}
/* Copy the standard input into each of the NFILES files in FILES
and into the standard output.
Return 0 if successful, 1 if any errors occur. */
static int
{
FILE **descriptors;
char buffer[BUFSIZ];
int bytes_read, i;
int ret = 0;
const char *mode_string = (append ? "a" : "w");
descriptors = (FILE **) xmalloc ((nfiles + 1) * sizeof (descriptors[0]));
/* Move all the names `up' one in the argv array to make room for
the entry for standard output. This writes into argv[argc]. */
for (i = nfiles; i >= 1; i--)
files[i] = files[i - 1];
SET_BINARY2 (0, 1);
/* In the array of NFILES + 1 descriptors, make
the first one correspond to standard output. */
descriptors[0] = stdout;
files[0] = _("standard output");
SETVBUF (stdout, NULL, _IONBF, 0);
↓ 30 lines
exit (errs);
}
/* Copy the standard input into each of the NFILES files in FILES
and into the standard output.
Return 0 if successful, 1 if any errors occur. */
static int
{
FILE **descriptors;
char buffer[BUFSIZ];
int bytes_read, i;
int ret = 0;
const char *mode_string = (append ? "a" : "w");
descriptors = (FILE **) xmalloc ((nfiles + 1) * sizeof (descriptors[0]));
/* Move all the names `up' one in the argv array to make room for
the entry for standard output. This writes into argv[argc]. */
for (i = nfiles; i >= 1; i--)
files[i] = files[i - 1];
SET_BINARY2 (0, 1);
/* In the array of NFILES + 1 descriptors, make
the first one correspond to standard output. */
descriptors[0] = stdout;
files[0] = _("standard output");
SETVBUF (stdout, NULL, _IONBF, 0);
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
tee.c:152:7: error: 'descriptors' undeclared (first use in this function)
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
tee.c:152:31: error: 'files' undeclared (first use in this function); did you mean 'fileno'?
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~
| fileno
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
tee.c:152:41: error: 'mode_string' undeclared (first use in this function)
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~~~~~~~
tee.c:156:11: error: 'ret' undeclared (first use in this function); did you mean 'creat'?
156 | ret = 1;
| ^~~
| creat
tee.c:167:7: error: 'bytes_read' undeclared (first use in this function)
167 | bytes_read = read (0, buffer, sizeof buffer);
| ^~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c:167:29: error: 'buffer' undeclared (first use in this function); did you mean 'setbuffer'?
167 | bytes_read = read (0, buffer, sizeof buffer);
| ^~~~~~
| setbuffer
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 89 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
tee.c:152:7: error: 'descriptors' undeclared (first use in this function)
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
tee.c:152:31: error: 'files' undeclared (first use in this function); did you mean 'fileno'?
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~
| fileno
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
tee.c:152:41: error: 'mode_string' undeclared (first use in this function)
152 | descriptors[i] = fopen (files[i], mode_string);
| ^~~~~~~~~~~
tee.c:156:11: error: 'ret' undeclared (first use in this function); did you mean 'creat'?
156 | ret = 1;
| ^~~
| creat
tee.c:167:7: error: 'bytes_read' undeclared (first use in this function)
167 | bytes_read = read (0, buffer, sizeof buffer);
| ^~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: *** Waiting for unfinished jobs....
tee.c:167:29: error: 'buffer' undeclared (first use in this function); did you mean 'setbuffer'?
167 | bytes_read = read (0, buffer, sizeof buffer);
| ^~~~~~
| setbuffer
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> head -50 /home/peter/coreutils_src/src/tee.c /* tee - read from standard input and write to standard output and files.
Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mike Parker, Richard M. Stallman, and David MacKenzie */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
#include <signal.h>
#include <getopt.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "tee"
#define AUTHORS N_ ("Mike Parker, Richard M. Stallman, and David MacKenzie")
/* If nonzero, append to output files rather than truncating them. */
static int append;
/* If nonzero, ignore interrupts. */
static int ignore_interrupts;
/* The name that this program was run with. */
char *program_name;
static struct option const long_options[] =
{
{"append", no_argument, NULL, 'a'},
{"ignore-interrupts", no_argument, NULL, 'i'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
↓ 51 lines
/* tee - read from standard input and write to standard output and files.
Copyright (C) 85,1990-2002 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 2, 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, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mike Parker, Richard M. Stallman, and David MacKenzie */
#include <config.h>
#include <stdio.h>
#include <sys/types.h>
#include <signal.h>
#include <getopt.h>
#include "system.h"
#include "closeout.h"
#include "error.h"
/* The official name of this program (e.g., no `g' prefix). */
#define PROGRAM_NAME "tee"
#define AUTHORS N_ ("Mike Parker, Richard M. Stallman, and David MacKenzie")
/* If nonzero, append to output files rather than truncating them. */
static int append;
/* If nonzero, ignore interrupts. */
static int ignore_interrupts;
/* The name that this program was run with. */
char *program_name;
static struct option const long_options[] =
{
{"append", no_argument, NULL, 'a'},
{"ignore-interrupts", no_argument, NULL, 'i'},
{GETOPT_HELP_OPTION_DECL},
{GETOPT_VERSION_OPTION_DECL},
compile-bench> sed -n 140,180p /home/peter/coreutils_src/src/tee.c }
#else
signal (SIGPIPE, SIG_IGN);
#endif
/* Do *not* warn if tee is given no file arguments.
POSIX requires that it work when given no arguments. */
if (close (STDIN_FILENO) != 0)
error (EXIT_FAILURE, errno, _("standard input"));
for (i = 1; i <= nfiles; i++)
{
descriptors[i] = fopen (files[i], mode_string);
if (descriptors[i] == NULL)
{
error (0, errno, "%s", files[i]);
ret = 1;
}
else
{
SETVBUF (descriptors[i], NULL, _IONBF, 0);
SET_BINARY (fileno (descriptors[i]));
}
}
while (1)
{
bytes_read = read (0, buffer, sizeof buffer);
#ifdef EINTR
if (bytes_read < 0 && errno == EINTR)
continue;
#endif
if (bytes_read <= 0)
break;
/* Write to all NFILES + 1 descriptors.
Standard output is the first one. */
for (i = 0; i <= nfiles; i++)
{
if (descriptors[i] != NULL)
fwrite (buffer, bytes_read, 1, descriptors[i]);
↓ 42 lines
}
#else
signal (SIGPIPE, SIG_IGN);
#endif
/* Do *not* warn if tee is given no file arguments.
POSIX requires that it work when given no arguments. */
if (close (STDIN_FILENO) != 0)
error (EXIT_FAILURE, errno, _("standard input"));
for (i = 1; i <= nfiles; i++)
{
descriptors[i] = fopen (files[i], mode_string);
if (descriptors[i] == NULL)
{
error (0, errno, "%s", files[i]);
ret = 1;
}
else
{
SETVBUF (descriptors[i], NULL, _IONBF, 0);
SET_BINARY (fileno (descriptors[i]));
}
}
while (1)
{
bytes_read = read (0, buffer, sizeof buffer);
#ifdef EINTR
if (bytes_read < 0 && errno == EINTR)
continue;
#endif
if (bytes_read <= 0)
break;
/* Write to all NFILES + 1 descriptors.
Standard output is the first one. */
for (i = 0; i <= nfiles; i++)
{
if (descriptors[i] != NULL)
fwrite (buffer, bytes_read, 1, descriptors[i]);
[empty output]
compile-bench> cd /home/peter/coreutils_src && make clean && make -j$(nproc) LDFLAGS=-lm Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
| ^~~~
tee.c:158:3: warning: type defaults to 'int' in declaration of 'free' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
tee.c:158:3: warning: parameter names (without types) in function declaration
tee.c:158:3: error: conflicting types for 'free'; have 'int()'
In file included from system.h:136,
from tee.c:26:
/usr/include/stdlib.h:555:13: note: previous declaration of 'free' with type 'void(void *)'
555 | extern void free (void *__ptr) __THROW;
| ^~~~
tee.c:160:3: error: expected identifier or '(' before 'return'
160 | return ret;
| ^~~~~~
tee.c:161:1: error: expected identifier or '(' before '}' token
161 | }
| ^
tee.c:132: error: unterminated #ifdef
132 | #ifdef _POSIX_SOURCE
|
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
↓ 92 lines
Making clean in tests
make[1]: Entering directory '/home/peter/coreutils_src/tests'
Making clean in wc
make[2]: Entering directory '/home/peter/coreutils_src/tests/wc'
test -z "a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E" || rm -f a0.O a0.E a1.O a1.E a2.O a2.E a3.O a3.E a4.O a4.E a5.O a5.E a6.O a6.E a7.O a7.E a8.O a8.E a9.O a9.E b0.O b0.E b1.O b1.E c0.O c0.E c1.O c1.E c2.O c2.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/wc'
Making clean in uniq
make[2]: Entering directory '/home/peter/coreutils_src/tests/uniq'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E" || rm -f 1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E 10.O 10.E 11.O 11.E 12.O 12.E 13.O 13.E 20.O 20.E 21.O 21.E 22.O 22.E 23.O 23.E obs30.O obs30.E 31.O 31.E 32.O 32.E 33.O 33.E 34.O 34.E 35.O 35.E obs40.O obs40.E obs41.O obs41.E 42.O 42.E 43.O 43.E obs44.O obs44.E obs45.O obs45.E 50.O 50.E 51.O 51.E 52.O 52.E 53.O 53.E 54.O 54.E 55.O 55.E 56.O 56.E 57.O 57.E 60.O 60.E 61.O 61.E 62.O 62.E 63.O 63.E 64.O 64.E 65.O 65.E 90.O 90.E 91.O 91.E 92.O 92.E 93.O 93.E 94.O 94.E 101.O 101.E 102.O 102.E 110.O 110.E 111.O 111.E 112.O 112.E 113.O 113.E 114.O 114.E 115.O 115.E 116.O 116.E 117.O 117.E 118.O 118.E 119.O 119.E
make[2]: Leaving directory '/home/peter/coreutils_src/tests/uniq'
Making clean in unexpand
make[2]: Entering directory '/home/peter/coreutils_src/tests/unexpand'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/unexpand'
Making clean in tsort
make[2]: Entering directory '/home/peter/coreutils_src/tests/tsort'
make[2]: Nothing to be done for 'clean'.
make[2]: Leaving directory '/home/peter/coreutils_src/tests/tsort'
Making clean in tr
make[2]: Entering directory '/home/peter/coreutils_src/tests/tr'
test -z "1.O 1.E 2.O 2.E 3.O 3.E 4.O 4.E 5.O 5.E 6.O 6.E 7.O 7.E 8.O 8.E 9.O 9.E a.O a.E b.O b.E c.O c.E d.O d.E e.O e.E f.O f.E g.O g.E h.O h.E i.O i.E j.O j.E k.O k.E l.O l.E m.O m.E n.O n.E o.O o.E p.O p.E q.O q.E r.O r.E s.O s.E t.O t.E u.O u.E v.O v.E w.O w.E x.O x.E y.O y.E z.O z.E range-a-a.O range-a-a.E null.O null.E upcase.O upcase.E dncase.O dncase.E rep-cclass.O rep-cclass.E rep-1.O rep-1.E rep-2.O rep-2.E rep-3.O rep-3.E o-rep-1.O o-rep-1.E o-rep-2.O o-rep-2.E esc.O esc.E ross-0
[command output truncated]
| ^~~~
tee.c:158:3: warning: type defaults to 'int' in declaration of 'free' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-int-Wimplicit-int]8;;]
tee.c:158:3: warning: parameter names (without types) in function declaration
tee.c:158:3: error: conflicting types for 'free'; have 'int()'
In file included from system.h:136,
from tee.c:26:
/usr/include/stdlib.h:555:13: note: previous declaration of 'free' with type 'void(void *)'
555 | extern void free (void *__ptr) __THROW;
| ^~~~
tee.c:160:3: error: expected identifier or '(' before 'return'
160 | return ret;
| ^~~~~~
tee.c:161:1: error: expected identifier or '(' before '}' token
161 | }
| ^
tee.c:132: error: unterminated #ifdef
132 | #ifdef _POSIX_SOURCE
|
make[3]: *** [Makefile:1263: tee.o] Error 1
make[3]: *** Waiting for unfinished jobs....
test.c: In function 'term':
test.c:260:15: warning: implicit declaration of function 'expr' [ttps://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wimplicit-function-declaration-Wimplicit-function-declaration]8;;]
260 | value = expr ();
| ^~~~
test.c:262:7: error: expected expression before 'else'
262 | else
| ^~~~
test.c:279:5: error: expected expression before '}' token
279 | }
| ^
test.c: In function 'binary_operator':
test.c:498:1: error: invalid storage class for function 'unary_operator'
498 | unary_operator (void)
| ^~~~~~~~~~~~~~
test.c: In function 'unary_operator':
test.c:610:3: error: 'else' without a previous 'if'
610 | else if ((STREQ (argv[pos+1], "-a")) || (STREQ (argv[pos+1], "-o")) ||
| ^~~~
test.c: In function 'main':
test.c:732: error: unterminated #else
732 | #if !defined (TEST_STANDALONE)
|
test.c:597: error: unterminated #else
597 | #ifndef S_ISFIFO
|
test.c:730:3: error: expected declaration or statement at end of input
730 | int value;
| ^~~
test.c: In function 'binary_operator':
test.c:730:3: error: expected declaration or statement at end of input
test.c:730:3: error: expected declaration or statement at end of input
test.c: At top level:
test.c:112:12: warning: 'unop' used but never defined
112 | static int unop (int op);
| ^~~~
test.c:113:12: warning: 'binop' used but never defined
113 | static int binop (char *s);
| ^~~~~
test.c:114:12: warning: 'unary_operator' used but never defined
114 | static int unary_operator (void);
| ^~~~~~~~~~~~~~
make[3]: *** [Makefile:1263: test.o] Error 1
make[3]: Leaving directory '/home/peter/coreutils_src/src'
make[2]: *** [Makefile:815: all] Error 2
make[2]: Leaving directory '/home/peter/coreutils_src/src'
make[1]: *** [Makefile:244: all-recursive] Error 1
make[1]: Leaving directory '/home/peter/coreutils_src'
make: *** [Makefile:199: all] Error 2
compile-bench> sed -n 120,160p /home/peter/coreutils_src/src/tee.c
sigact.sa_handler = SIG_IGN;
sigemptyset (&sigact.sa_mask);
sigact.sa_flags = 0;
sigaction (SIGINT, &sigact, NULL);
#else /* !_POSIX_SOURCE */
signal (SIGINT, SIG_IGN);
#endif /* _POSIX_SOURCE */
}
/* Don't let us be killed if one of the output files is a pipe that
doesn't consume all its input. */
#ifdef _POSIX_SOURCE
{
struct sigaction sigact;
sigact.sa_handler = SIG_IGN;
sigemptyset (&sigact.sa_mask);
sigact.sa_flags = 0;
sigaction (SIGPIPE, &sigact, NULL);
}
}
if (bytes_read == -1)
{
error (0, errno, _("read error"));
ret = 1;
}
/* Close the files, but not standard output. */
for (i = 1; i <= nfiles; i++)
if (descriptors[i] != NULL
&& (ferror (descriptors[i]) || fclose (descriptors[i]) == EOF))
{
error (0, errno, "%s", files[i]);
ret = 1;
}
free (descriptors);
return ret;
↓ 41 lines
sigact.sa_handler = SIG_IGN;
sigemptyset (&sigact.sa_mask);
sigact.sa_flags = 0;
sigaction (SIGINT, &sigact, NULL);
#else /* !_POSIX_SOURCE */
signal (SIGINT, SIG_IGN);
#endif /* _POSIX_SOURCE */
}
/* Don't let us be killed if one of the output files is a pipe that
doesn't consume all its input. */
#ifdef _POSIX_SOURCE
{
struct sigaction sigact;
sigact.sa_handler = SIG_IGN;
sigemptyset (&sigact.sa_mask);
sigact.sa_flags = 0;
sigaction (SIGPIPE, &sigact, NULL);
}
}
if (bytes_read == -1)
{
error (0, errno, _("read error"));
ret = 1;
}
/* Close the files, but not standard output. */
for (i = 1; i <= nfiles; i++)
if (descriptors[i] != NULL
&& (ferror (descriptors[i]) || fclose (descriptors[i]) == EOF))
{
error (0, errno, "%s", files[i]);
ret = 1;
}
free (descriptors);
return ret;
[empty output]
exceeded max tool calls (90)