Name: H5Pset_gc_references
Signature:
  herr_t `H5Pset_gc_reference`(hid_t `plist`, unsigned `gc_ref` )
Purpose:
  Sets garbage collecting references flag.
Description:
  `H5Pset_gc_references` sets the flag for garbage collecting references for the file.

  Dataset region references and other reference types use space in an HDF5 file's global heap. If garbage collection is on and the user passes in an uninitialized value in a reference structure, the heap might get corrupted. When garbage collection is off, however, and the user re-uses a reference, the previous heap block will be orphaned and not returned to the free heap space.

  When garbage collection is on, the user must initialize the reference structures to 0 or risk heap corruption.

  The default value for garbage collecting references is off.

Parameters:

hid_t `plist` | IN: File access property list identifier.
unsigned `gc_ref` | IN: Flag setting reference garbage collection to on (`1`) or off (`0`).

Returns:
  Returns a non-negative value if successful; otherwise returns a negative value.
Fortran90 Interface: h5pset_gc_references_f

      SUBROUTINE h5pset_gc_references_f (prp_id, gc_reference, hdferr)
        IMPLICIT NONE
        INTEGER(HID_T), INTENT(IN) :: prp_id ! Property list identifier
        INTEGER, INTENT(IN) :: gc_reference  ! Flag for garbage collecting
                                             ! references for the file
        INTEGER, INTENT(OUT) :: hdferr       ! Error code
                                             ! 0 on success and -1 on failure
      END SUBROUTINE h5pset_gc_references_f