Mercurium is a C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping developed by the Programming Models group at the Barcelona Supercomputing Center
SUBROUTINE set_field(fld, val)
implicit none
type(field_type), INTENT(out) :: fld
real, INTENT(in) :: val
select type(fld)
type is (r2d_field)
fld%data = val
class default
end select
END SUBROUTINE set_field
tmp.f90:6:5: sorry: SELECT TYPE statement not supported