I believe we’ve supported SPACING since we started supporting F90, which is was sometime in the mid-2000s. Also, I didn’t mention SPACING in my post, that was a user who posted after mine.
Is there a specific issue you’re encountering?
% cat spacing.f90
PROGRAM test_spacing
INTEGER, PARAMETER :: SGL = SELECTED_REAL_KIND(p=6, r=37)
INTEGER, PARAMETER :: DBL = SELECTED_REAL_KIND(p=13, r=200)
WRITE(*,*) spacing(1.0_SGL) ! "1.1920929E-07" on i686
WRITE(*,*) spacing(1.0_DBL) ! "2.220446049250313E-016" on i686
END PROGRAM
% nvfortran spacing.f90 -V21.9; a.out
1.1920929E-07
2.2204460492503131E-016