coords = (hsize_t *)HDmalloc((size_t)ret * SPACE2_RANK * sizeof(hsize_t) * 2); /* allocate space for the hyperslab blocks */
 
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * Copyright by The HDF Group.                                               *
 * Copyright by the Board of Trustees of the University of Illinois.         *
 * All rights reserved.                                                      *
 *                                                                           *
 * This file is part of HDF5.  The full HDF5 copyright notice, including     *
 * terms governing use, modification, and redistribution, is contained in    *
 * the COPYING file, which can be found at the root of the source code       *
 * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.  *
 * If you do not have access to either file, you may request a copy from     *
 * help@hdfgroup.org.                                                        *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/***********************************************************
*
* Test program:     trefer
*
* Test the Reference functionality
*
*************************************************************/
#include "testhdf5.h"
#define FILE1   "trefer1.h5"
#define FILE2    "trefer2.h5"
#define FILE3    "trefer3.h5"
/* 1-D dataset with fixed dimensions */
#define SPACE1_RANK    1
#define SPACE1_DIM1    4
/* 2-D dataset with fixed dimensions */
#define SPACE2_RANK    2
#define SPACE2_DIM1    10
#define SPACE2_DIM2    10
/* Larger 1-D dataset with fixed dimensions */
#define SPACE3_RANK    1
#define SPACE3_DIM1    100
/* Element selection information */
#define POINT1_NPOINTS 10
/* Compound datatype */
typedef struct s1_t {
    unsigned int a;
    unsigned int b;
    float c;
} s1_t;
#define GROUPNAME       "/group"