From e0c8341b3e4e13778bcde00d477e461ea8e94306 Mon Sep 17 00:00:00 2001 From: Stefan Westerfeld Date: Fri, 22 Apr 2016 18:03:37 +0200 Subject: [PATCH 031/176] RCORE: compile fixes for KUbuntu 16.04/gcc 5.3.1-14ubuntu2 Rapicorn uses isnan(...) and isinf(...) from cmath.h, however on KUbuntu 16.04 it should use std::isnan(...) and std::isinf(...) instead. Patch below. Acked-by: Tim Janik --- rcore/strings.cc | 10 +++++----- rcore/tests/benchrcore.cc | 4 ++-- rcore/tests/strings.cc | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/rcore/strings.cc b/rcore/strings.cc index d5b0216..8b3bc3f 100644 --- a/rcore/strings.cc +++ b/rcore/strings.cc @@ -437,7 +437,7 @@ static long double libc_strtold (const char *nptr, char **endptr) { const long double result = strtold (nptr, endptr); - if (isnan (result) && std::signbit (result) == 0) + if (std::isnan (result) && std::signbit (result) == 0) { const char *p = nptr; while (isspace (*p)) @@ -500,9 +500,9 @@ string_to_double (const char *dblstring, const char **endptr) String string_from_float (float value) { - if (isnan (value)) + if (std::isnan (value)) return std::signbit (value) ? "-NaN" : "+NaN"; - if (isinf (value)) + if (std::isinf (value)) return std::signbit (value) ? "-Infinity" : "+Infinity"; return string_format ("%.7g", value); } @@ -511,9 +511,9 @@ string_from_float (float value) String string_from_double (double value) { - if (isnan (value)) + if (std::isnan (value)) return std::signbit (value) ? "-NaN" : "+NaN"; - if (isinf (value)) + if (std::isinf (value)) return std::signbit (value) ? "-Infinity" : "+Infinity"; return string_format ("%.17g", value); } diff --git a/rcore/tests/benchrcore.cc b/rcore/tests/benchrcore.cc index 3899a08..12fde16 100644 --- a/rcore/tests/benchrcore.cc +++ b/rcore/tests/benchrcore.cc @@ -188,8 +188,8 @@ test_random_numbers() const double rf = random_frange (989617512, 9876547656); TASSERT (rf >= 989617512 && rf < 9876547656); } - TASSERT (isnan (random_frange (NAN, 1))); - TASSERT (isnan (random_frange (0, NAN))); + TASSERT (std::isnan (random_frange (NAN, 1))); + TASSERT (std::isnan (random_frange (0, NAN))); #if 0 // example penalty paid in random_int64() size_t i, j = 0; for (i = 0; i < 100; i++) diff --git a/rcore/tests/strings.cc b/rcore/tests/strings.cc index 468a6e6..dae3e3d 100644 --- a/rcore/tests/strings.cc +++ b/rcore/tests/strings.cc @@ -311,9 +311,9 @@ string_conversions (void) TCMP (string_to_double ("-0.5"), ==, -0.5); double tfloat; tfloat = string_to_double ("+NAN"); - assert (isnan (tfloat) && std::signbit (tfloat) == 0); + assert (std::isnan (tfloat) && std::signbit (tfloat) == 0); tfloat = string_to_double ("-NAN"); - assert (isnan (tfloat) && std::signbit (tfloat) == 1); + assert (std::isnan (tfloat) && std::signbit (tfloat) == 1); TCMP (string_capitalize ("fOO bar"), ==, "Foo Bar"); TCMP (string_capitalize ("foo BAR BAZ", 2), ==, "Foo Bar BAZ"); } -- 2.9.1 variable. [test-on-test-begin-gnu]: New hook, used to record the start time. [test-on-test-end-gnu]: Conditionally print elapsed time. Record it as the optional metadata in the test result file (.trs). * doc/guix.texi (Running the Test Suite): Document it. Maxim Cournoyer 2021-01-31build: test-driver.scm: Allow running as a standalone script....* build-aux/test-driver.scm: Add an exec-based shebang and set the script executable bit. (main): Insert a newline after the version string is printed with --version. Maxim Cournoyer 2021-01-31build: test-driver.scm: Add a new '--errors-only' option....* build-aux/test-driver.scm (show-help): Add the help text for the new '--errors-only' option. (%options): Add the errors-only option. (test-runner-gnu): Add the errors-only? parameter and update doc. Move the logging of the test data after the test has completed, so a choice can be made whether to keep it or discard it based on the value of the test result. (main): Pass the errors-only? option to the driver. * doc/guix.texi (Running the Test Suite): Document the new option. Maxim Cournoyer 2021-01-31build: test-driver.scm: Add test cases filtering options....* build-aux/test-driver.scm (show-help): Add help text for the new --select and --exclude options. (%options): Add the new select and exclude options. (test-runner-gnu): Pass them to the test runner. Update doc. (test-match-name*, test-match-name*/negated, %test-match-all): New variables. (main): Compute the test specifier based on the values of the new options and apply it to the current test runner when running the test file. * doc/guix.texi (Running the Test Suite): Document the new options. Maxim Cournoyer 2021-01-31build: test-driver.scm: Enable colored test results by default....The Automake parallel test harness does its own smart detection of the terminal color capability and always provides the --color-tests argument to the driver. This change defaults the --color-tests argument to true when the test driver is run on its own (not via Automake). * build-aux/test-driver.scm (main): Set the default value of the --color-tests argument to true when it's not explicitly provided. Maxim Cournoyer 2021-01-31build: test-driver.scm: Make output redirection optional....This makes it easier (and less surprising) for users to experiment with the custom Scheme test driver directly. The behavior is unchanged from Automake's point of view. * build-aux/test-driver.scm (main): Make the --log-file and --trs-file arguments optional and update doc. Only open, redirect and close a port to a log file when the --log-file option is provided. Only open and close a port to a trs file when the --trs-file option is provided. (test-runner-gnu): Set OUT-PORT parameter default value to the current output port. Set the TRS-PORT parameter default value to a void port. Update doc. Maxim Cournoyer