function get_openmp_version() result(openmp_version) implicit none character(:), allocatable :: openmp_version #ifdef _OPENMP select case (_OPENMP) case (199911) openmp_version = '1.0' case (200203) openmp_version = '2.0' case (200505) openmp_version = '2.5' case (200805) openmp_version = '3.0' case (201107) openmp_version = '3.1' case (201307) openmp_version = '4.0' case (201511) openmp_version = '4.5' case (201811) openmp_version = '5.0' case (202011) openmp_version = '5.1' case (202111) openmp_version = '5.2' case default openmp_version = 'unknown' end select #else openmp_version = 'not defined' #endif end function get_openmp_version