sync-2.m: New test.
* objc.dg/sync-2.m: New test. * obj-c++.dg/sync-2.mm: New test. From-SVN: r164585
This commit is contained in:
parent
3994c6b11b
commit
f1570cec9b
@ -1,3 +1,8 @@
|
||||
2010-09-24 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
* objc.dg/sync-2.m: New test.
|
||||
* obj-c++.dg/sync-2.mm: New test.
|
||||
|
||||
2010-09-24 Tobias Burnus <burnus@net-b.de>
|
||||
|
||||
PR fortran/40571
|
||||
|
35
gcc/testsuite/obj-c++.dg/sync-2.mm
Normal file
35
gcc/testsuite/obj-c++.dg/sync-2.mm
Normal file
@ -0,0 +1,35 @@
|
||||
/* Make sure that @synchronized parses and a very basic test runs. */
|
||||
/* { dg-options "-fobjc-exceptions -fgnu-runtime" } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
|
||||
int main (void)
|
||||
{
|
||||
Object *a = [Object new];
|
||||
Object *b = [Object new];
|
||||
Object *c = [Object 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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
35
gcc/testsuite/objc.dg/sync-2.m
Normal file
35
gcc/testsuite/objc.dg/sync-2.m
Normal file
@ -0,0 +1,35 @@
|
||||
/* Make sure that @synchronized parses and a very basic test runs. */
|
||||
/* { dg-options "-fobjc-exceptions -fgnu-runtime" } */
|
||||
|
||||
#include "../objc-obj-c++-shared/Object1.h"
|
||||
|
||||
int main (void)
|
||||
{
|
||||
Object *a = [Object new];
|
||||
Object *b = [Object new];
|
||||
Object *c = [Object 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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user