Test which checks the omp section lastprivate directive. 2.0 omp section lastprivate INTEGER FUNCTION section_lastprivate() INTEGER known_sum INTEGER i, i0, sum, sum0 COMMON /orphvars/ i,i0,sum sum = 0 sum0 = 0 i0 = -1 !$omp parallel !$omp sections lastprivate(i0)private(i0) private(i,sum0) !$omp section sum0 = 0 DO i=1, 399 sum0 = sum0 + i i0 = i END DO !$omp critical sum = sum + sum0 !$omp end critical !$omp section sum0 = 0 DO i=400, 699 sum0 = sum0 + i i0 = i END DO !$omp critical sum = sum + sum0 !$omp end critical !$omp section sum0 = 0 DO i=700, 999 sum0 = sum0 + i i0 = i END DO !$omp critical sum = sum + sum0 !$omp end critical !$omp end sections !$omp end parallel known_sum = (999*1000)/2 IF ( known_sum .EQ. sum .AND. i0 .EQ. 999 ) THEN = 1 ELSE = 0 END IF END