ocean_surfstress_enter_data Subroutine

private subroutine ocean_surfstress_enter_data(this)

Type-bound wrapper — delegates to the non-polymorphic impl so the device-attach map base is the heap object, not a polymorphic stack box (AMD libomptarget cross-slot-overlap fix). Slot-header presence comes from the orchestrator’s root copyin(state); only the leaf arrays + scratch are attached here.

Type Bound

ocean_surface_stress_t

Arguments

Type IntentOptional Attributes Name
class(ocean_surface_stress_t), intent(inout) :: this

Calls

proc~~ocean_surfstress_enter_data~~CallsGraph proc~ocean_surfstress_enter_data ocean_surface_stress_t%ocean_surfstress_enter_data proc~ocean_surfstress_enter_data_impl ocean_surfstress_enter_data_impl proc~ocean_surfstress_enter_data->proc~ocean_surfstress_enter_data_impl proc~scratch_3d_buffer_enter_data_impl scratch_3d_buffer_enter_data_impl proc~ocean_surfstress_enter_data_impl->proc~scratch_3d_buffer_enter_data_impl

Source Code

   subroutine ocean_surfstress_enter_data(this)
      !! Type-bound wrapper — delegates to the non-polymorphic impl so the
      !! device-attach map base is the heap object, not a polymorphic stack
      !! box (AMD libomptarget cross-slot-overlap fix).  Slot-header
      !! presence comes from the orchestrator's root copyin(state); only
      !! the leaf arrays + scratch are attached here.
      class(ocean_surface_stress_t), intent(inout) :: this
      select type (this)
      type is (ocean_surface_stress_t)
         call ocean_surfstress_enter_data_impl(this)
      end select
   end subroutine ocean_surfstress_enter_data