/* { dg-do run } */
/* { dg-require-effective-target tls_runtime } */

#include <omp.h>
#include <stdlib.h>

int thr;
#pragma omp threadprivate (thr)

int
test (int l)
{
  return l || (thr != omp_get_thread_num () * 2);
}

int
main (void)
{
  int l = 0;

  omp_set_dynamic (0);
  omp_set_num_threads (6);

  thr = 8;
  /* Broadcast the value to all threads.  */
#pragma omp parallel copyin (thr)
  ;

#pragma omp parallel reduction (||:l)
  {
    /* Now test if the broadcast succeeded.  */
    l = thr != 8;
    thr = omp_get_thread_num () * 2;
#pragma omp barrier
    l = test (l);
  }

  if (l)
    abort ();
  return 0;
}
