summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Harten <pharten@ncsa.uiuc.edu>1999-02-25 18:55:37 (GMT)
committerPaul Harten <pharten@ncsa.uiuc.edu>1999-02-25 18:55:37 (GMT)
commitaea248e1dea6abe20dbf2792d60947070b6ff0ff (patch)
tree37b50c645125e6098865a10320c35752555181c3
parent56c7fb0df1f5aa45b1d230ae75c613fa1221943a (diff)
downloadhdf5-aea248e1dea6abe20dbf2792d60947070b6ff0ff.zip
hdf5-aea248e1dea6abe20dbf2792d60947070b6ff0ff.tar.gz
hdf5-aea248e1dea6abe20dbf2792d60947070b6ff0ff.tar.bz2
[svn-r1103] Purpose:
Bug fix Problem: This bug is coming up as a bus error on some machines (fuga, spank) in the "fillval" test. At higher levels of optimizations, H5detect gets rid of a statement which is to be used in alignment tests. Because of this, SIGBUS is never delivered, and the alignment constraints of the machine are not recorded correctly by H5detect in H5Tinit.c. Solution: By preventing the optimizer from getting rid of the statement to be used in the alignment tests, SIGBUS is delivered as expected, and the alignment constraints of the machine are recorded correctly. Platform tested: Irix6.5(fuga), HPUX10.20(spank), Solaris2.5(Kryten)
-rw-r--r--src/H5detect.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/H5detect.c b/src/H5detect.c
index 3346b91..683b76b 100644
--- a/src/H5detect.c
+++ b/src/H5detect.c
@@ -255,6 +255,7 @@ precision (detected_t *d)
fflush(stderr); \
if (0==(_child=fork())) { \
_buf = malloc(sizeof(TYPE)+align_g[NELMTS(align_g)-1]); \
+ *((TYPE*)(_buf+align_g[_ano])) = _val; \
_val = *((TYPE*)(_buf+align_g[_ano])); \
free(_buf); \
exit(0); \