This is more inclusive than the explicit list of lock routines that include a flush with no list given on p. 75, lines 10-13, which doesn't mention omp_init_lock, omp_init_nest_lock, omp_destroy_lock, or omp_destroy_nest_lock. Does a flush without a list now occur in these routines, too?The lock routines include a flush with no list; the read and update to the lock variable must be implemented as if they are atomic with the flush.
The OpenMP Forums are now closed to new posts. Please visit Stack Overflow if you are in need of help: https://stackoverflow.com/questions/tagged/openmp
Iowa State University HPC Group
You are correct that the init and destroy routines should not include a flush. We created this ambiguity in the 3.0 spec when we updated that section to reflect the requirement of a flush with no list that was added in the 2.5 spec. We will fix this in the 3.1 spec. I think you can safely limit expectations to the routines explicitly identified on page 75.