OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [objc.dg/] [sync-2.m] - Rev 774

Go to most recent revision | Compare with Previous | Blame | View Log

/* 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;
			}
		    }
		}
	    }
	}
    }
}
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.