From aea248e1dea6abe20dbf2792d60947070b6ff0ff Mon Sep 17 00:00:00 2001 From: Paul Harten Date: Thu, 25 Feb 1999 13:55:37 -0500 Subject: [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) --- src/H5detect.c | 1 + 1 file changed, 1 insertion(+) 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); \ -- cgit v0.12