xref: /openbsd-src/gnu/gcc/libgomp/testsuite/libgomp.c/appendix-a/a.33.3.c (revision 404b540a9034ac75a6199ad1a32d1bbc7a0d4210)
1*404b540aSrobert /* { dg-do compile } */
2*404b540aSrobert 
3*404b540aSrobert #include <stdio.h>
4*404b540aSrobert #include <stdlib.h>
5*404b540aSrobert #include <omp.h>
6*404b540aSrobert omp_lock_t *
new_lock()7*404b540aSrobert new_lock ()
8*404b540aSrobert {
9*404b540aSrobert   omp_lock_t *lock_ptr;
10*404b540aSrobert #pragma omp single copyprivate(lock_ptr)
11*404b540aSrobert   {
12*404b540aSrobert     lock_ptr = (omp_lock_t *) malloc (sizeof (omp_lock_t));
13*404b540aSrobert     omp_init_lock (lock_ptr);
14*404b540aSrobert   }
15*404b540aSrobert   return lock_ptr;
16*404b540aSrobert }
17