mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
Corrected false assumption that types like int_fast8_t must be 1 byte
This fixes a compiler error on OpenBSD where int_fast8_t is in fact larger than 1 byte.
This commit is contained in:
parent
8b3c09f780
commit
61464d7ebe
@ -205,15 +205,12 @@ precision(detected_t *d)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*-------------------------------------------------------------------------
|
/*-------------------------------------------------------------------------
|
||||||
* Function: DETECT_I/DETECT_BYTE
|
* Function: DETECT_I
|
||||||
*
|
*
|
||||||
* Purpose: These macro takes a type like `int' and a base name like
|
* Purpose: This macro takes a type like `int' and a base name like
|
||||||
* `nati' and detects the byte order. The VAR is used to
|
* `nati' and detects the byte order. The VAR is used to
|
||||||
* construct the names of the C variables defined.
|
* construct the names of the C variables defined.
|
||||||
*
|
*
|
||||||
* DETECT_I is used for types that are larger than one byte,
|
|
||||||
* DETECT_BYTE is used for types that are exactly one byte.
|
|
||||||
*
|
|
||||||
* Return: void
|
* Return: void
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
@ -247,17 +244,8 @@ precision(detected_t *d)
|
|||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define DETECT_BYTE(TYPE, VAR, INFO) \
|
|
||||||
{ \
|
|
||||||
HDcompile_assert(sizeof(TYPE) == 1); \
|
|
||||||
\
|
|
||||||
DETECT_I_BYTE_CORE(TYPE, VAR, INFO, int) \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define DETECT_I(TYPE, VAR, INFO) \
|
#define DETECT_I(TYPE, VAR, INFO) \
|
||||||
{ \
|
{ \
|
||||||
HDcompile_assert(sizeof(TYPE) > 1); \
|
|
||||||
\
|
|
||||||
DETECT_I_BYTE_CORE(TYPE, VAR, INFO, TYPE) \
|
DETECT_I_BYTE_CORE(TYPE, VAR, INFO, TYPE) \
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1232,9 +1220,9 @@ bit.\n";
|
|||||||
static void HDF_NO_UBSAN
|
static void HDF_NO_UBSAN
|
||||||
detect_C89_integers(void)
|
detect_C89_integers(void)
|
||||||
{
|
{
|
||||||
DETECT_BYTE(signed char, SCHAR, d_g[nd_g]);
|
DETECT_I(signed char, SCHAR, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(unsigned char, UCHAR, d_g[nd_g]);
|
DETECT_I(unsigned char, UCHAR, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_I(short, SHORT, d_g[nd_g]);
|
DETECT_I(short, SHORT, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
@ -1278,17 +1266,17 @@ detect_C89_floats(void)
|
|||||||
static void HDF_NO_UBSAN
|
static void HDF_NO_UBSAN
|
||||||
detect_C99_integers8(void)
|
detect_C99_integers8(void)
|
||||||
{
|
{
|
||||||
DETECT_BYTE(int8_t, INT8, d_g[nd_g]);
|
DETECT_I(int8_t, INT8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(uint8_t, UINT8, d_g[nd_g]);
|
DETECT_I(uint8_t, UINT8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(int_least8_t, INT_LEAST8, d_g[nd_g]);
|
DETECT_I(int_least8_t, INT_LEAST8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(uint_least8_t, UINT_LEAST8, d_g[nd_g]);
|
DETECT_I(uint_least8_t, UINT_LEAST8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(int_fast8_t, INT_FAST8, d_g[nd_g]);
|
DETECT_I(int_fast8_t, INT_FAST8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
DETECT_BYTE(uint_fast8_t, UINT_FAST8, d_g[nd_g]);
|
DETECT_I(uint_fast8_t, UINT_FAST8, d_g[nd_g]);
|
||||||
nd_g++;
|
nd_g++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user