diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-03-28 23:33:44 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-03-28 23:33:44 +0100 |
commit | 4702deb424633ad02c495c01d950b973c0ead8ea (patch) | |
tree | 64b72ad70440870db55d694f6210684bb3ec5bca | |
parent | 465ff50245e0f5deb26612ac7401b51c415deeb0 (diff) | |
download | guile-4702deb424633ad02c495c01d950b973c0ead8ea.tar.gz |
tests: Skip `test-pthread-create-secondary' except on Linux-based systems.
* test-suite/standalone/test-pthread-create-secondary.c: Skip on
non-Linux-based systems.
-rw-r--r-- | test-suite/standalone/test-pthread-create-secondary.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/test-suite/standalone/test-pthread-create-secondary.c b/test-suite/standalone/test-pthread-create-secondary.c index e145fa5bc..14ea240a4 100644 --- a/test-suite/standalone/test-pthread-create-secondary.c +++ b/test-suite/standalone/test-pthread-create-secondary.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2011 Free Software Foundation, Inc. +/* Copyright (C) 2011, 2013 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -30,15 +30,20 @@ #include <gc/gc.h> -/* Up to GC 7.2alpha5, calling `GC_INIT' from a secondary thread would +/* Currently, calling `GC_INIT' from a secondary thread is only + supported on some systems, notably Linux-based systems (and not on + FreeBSD, for instance.) + + Up to GC 7.2alpha5, calling `GC_INIT' from a secondary thread would lead to a segfault. This was fixed in BDW-GC on 2011-04-16 by Ivan Maidanski. See <http://thread.gmane.org/gmane.lisp.guile.bugs/5340> for details. */ -#if (GC_VERSION_MAJOR > 7) \ - || ((GC_VERSION_MAJOR == 7) && (GC_VERSION_MINOR > 2)) \ - || ((GC_VERSION_MAJOR == 7) && (GC_VERSION_MINOR == 2) \ - && (GC_ALPHA_VERSION > 5)) +#if defined __linux__ \ + && (GC_VERSION_MAJOR > 7 \ + || (GC_VERSION_MAJOR == 7 && GC_VERSION_MINOR > 2) \ + || (GC_VERSION_MAJOR == 7 && GC_VERSION_MINOR == 2 \ + && GC_ALPHA_VERSION > 5)) static void * do_something (void *arg) @@ -73,7 +78,7 @@ main (int argc, char *argv[]) } -#else /* GC < 7.2 */ +#else /* Linux && GC < 7.2alpha5 */ int main (int argc, char *argv[]) |