]> git.ipfire.org Git - thirdparty/coreutils.git/commit
factor: merge with preexisting factor; integrate tests; avoid warnings
authorJim Meyering <meyering@redhat.com>
Sun, 16 Sep 2012 20:31:04 +0000 (22:31 +0200)
committerJim Meyering <meyering@redhat.com>
Thu, 4 Oct 2012 20:06:40 +0000 (22:06 +0200)
commit759ebcb57db73449b5670204f85931d34881b7d2
tree0c72d5266451db1dca993ed5034d8b323a73cf1b
parent49f5c21fff9241c195d74101a334fdc2c8dc33e8
factor: merge with preexisting factor; integrate tests; avoid warnings

* src/factor.c: Renamed from factor-ng.c, with the following changes:
Adjust copyright header to be consistent with others.
Use xmalloc and xrealloc, to avoid segv upon OOM.
Switch back to using readtokens to handle input.
Diagnose invalid inputs.
s/fprintf+exit/error/
(print_factors): Add comments.
(strto2uintmax): Return strtol_error, not int.
(read_item): Remove, no longer used.
(main): Use atexit(close_stdout) so that we don't ignore failed write.
* cfg.mk: Exempt src/longlong.h from several tests.
Exempt run.sh from the test-list-consistency test.
Exempt make-prime-list.c from numerous tests, since we won't
be making it conform: it must not link with libcoreutils.a.
Exempt factor-ng.c from the no-upper-case error message test.
* AUTHORS (factor): Add Torbjörn and Niels.
* tests/local.mk (factor_tests): Encode the 37 tests.
($(factor_tests)): Rule to generate a test script for each test.
* tests/factor/run.sh: New script, marked as very expensive.
* .gitignore: Ignore new generated files.
* src/local.mk (src/primes.h): New rule.
(noinst_PROGRAMS): Add make-prime-list.
(noinst_HEADERS): Add longlong.h.
Remove all wheel-related rules and files.
* src/wheel-gen.pl: Remove file.

maint: mark set-but-not-used variables with ATTRIBUTE_UNUSED
* src/factor-ng.c (redcify, prime_p, isqrt2): Mark them, so we
don't have to disable -Wunused-but-set-variable.

maint: use __builtin_expect only if __GNUC__
* src/factor-ng.c (LIKELY, UNLIKELY) [__GNUC__]: Add #ifdef guard.

build: avoid warning about unused macro
* src/factor-ng.c (__GMP_DECLSPEC): Don't define here
* src/longlong.h (__GMP_DECLSPEC): Define if not already defined.
.gitignore
AUTHORS
cfg.mk
src/.gitignore
src/factor-ng.c [deleted file]
src/factor.c
src/local.mk
src/longlong.h
src/wheel-gen.pl [deleted file]
tests/factor/run.sh [new file with mode: 0755]
tests/local.mk