The following code:
module parallel_mod type interpol_spline real(kind=8), allocatable :: x(:), y(:), dy(:), ddy(:) real(kind=8), allocatable :: w(:,:) end type interpol_spline type filament type(interpol_spline) :: x_spline type(interpol_spline) :: y_spline type(interpol_spline) :: z_spline type(interpol_spline) :: s_spline end type contains subroutine parallel_test_two() implicit none type(filament) :: fil_tmp !$omp parallel private(fil_tmp) !$omp end parallel end subroutine end module parallel_mod program omp_test use parallel_mod implicit none print *, 'about to test omp' call parallel_test_two() print *, 'all done' end program omp_test
When compiled like this:
ifort -O1 -openmp omp_test.f90
Outputs this at runtime:
about to test omp Segmentation fault
My ifort version information:
Intel(R) Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 13.1.3.192 Build 20130607
I assume this is an optimizer/OpenMP bug. But I can't find a workaround - any help/suggestions would be great.