ACX_FORTRAN_RUN_CHECK_SIZEOF in acx_fc_real_size.m4 does not check size of its argument
m4/acx_fc_real_size.m4 does not actually check for the size of the real type passed as its argument, similar to the analogous function
m4/acx_fc_integer_size.m4 for integer types.
Furthermore, when using this function, the bits division arithmetic,
AS_VAR_SET([acx_fortran_Sizeof],[`expr ]AS_VAR_GET([acx_fortran_Sizeof])[ / $acx_cv_c_char_bits`])]
was returning some shell errors stating that
expr was missing an operator, and that
/ is a directory. This seems to be due to the multiple nests of
eval which come with
AS_VAR_GET. It was easier to just do what was intended using the specifically designed method
AS_VAR_ARITH, rather than using the more general
The attached patch fixes these two issues.
Updated by Matthew Krupcale over 2 years ago
The latest release of 1.0.5 fixes the second issue noted regarding the division arithmetic, but the first issue remains: the real type passed as the first argument to
ACX_FORTRAN_RUN_CHECK_SIZEOF is not checked for its size; rather, the specific type
real is checked.
The attached patch is updated for the latest release 1.0.5 to fix this issue.