From d512ec06575a44f3cbefae6524acb8e84791cd8e Mon Sep 17 00:00:00 2001 From: Michael Gran Date: Tue, 20 Jun 2023 12:21:54 -0700 Subject: [PATCH] Skip tests that require STATPROF when not supported * test-suite/tests/statprof.test (when-implemented): throw unresolved when SIGPROF unavailable --- test-suite/tests/statprof.test | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/test-suite/tests/statprof.test b/test-suite/tests/statprof.test index 994d88269..0e99d8edd 100644 --- a/test-suite/tests/statprof.test +++ b/test-suite/tests/statprof.test @@ -36,15 +36,17 @@ ;; on platforms such as GNU/Hurd or Cygwin where `ITIMER_PROF' is is ;; currently unimplemented. (define-syntax-rule (when-implemented body ...) - (catch 'system-error - (lambda () - body ...) - (lambda args - (let ((errno (system-error-errno args))) - (false-if-exception (statprof-stop)) - (if (or (= errno ENOSYS) (= errno EINVAL)) - (throw 'unresolved) - (apply throw args)))))) + (begin + (unless (defined? 'SIGPROF) (throw 'unresolved)) + (catch 'system-error + (lambda () + body ...) + (lambda args + (let ((errno (system-error-errno args))) + (false-if-exception (statprof-stop)) + (if (or (= errno ENOSYS) (= errno EINVAL)) + (throw 'unresolved) + (apply throw args))))))) (pass-if-equal "return values" '(42 77)