Test which checks that omp_in_parallel returns false when called from a serial region and true when called within a parallel region. 2.0 omp_in_parallel INTEGER FUNCTION omp_in_parallel() ! checks that false is returned when called from serial region ! and true is returned when called within parallel region LOGICAL omp_in_parallel ! LOGICAL omp_in_parallel LOGICAL serial, parallel COMMON /orphvars/ serial, parallel serial=.TRUE. parallel=.FALSE. serial=omp_in_parallel() !$omp parallel !$omp single parallel=omp_in_parallel(); !$omp end single !$omp end parallel IF ( (.NOT. serial) .AND. (parallel) ) THEN =1 ELSE =0 END IF END FUNCTION