blob: c73bbd92fbc728d1ae18253bee16c90c64177174 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
/* Make sure that @synchronized parses and a very basic test runs. */
/* { dg-options "-fobjc-exceptions -fgnu-runtime" } */
#include "../objc-obj-c++-shared/TestsuiteObject.h"
int main (void)
{
TestsuiteObject *a = [TestsuiteObject new];
TestsuiteObject *b = [TestsuiteObject new];
TestsuiteObject *c = [TestsuiteObject new];
/* This single-threaded test just checks that @synchronized() uses a
recursive mutex, and that the runtime at least doesn't crash
immediately upon finding it.
*/
@synchronized (a)
{
@synchronized (a)
{
@synchronized (b)
{
@synchronized (b)
{
@synchronized (c)
{
@synchronized (c)
{
return 0;
}
}
}
}
}
}
}
|