From 5f015f474250cb632890e3ddc8d12461c0e2a476 Mon Sep 17 00:00:00 2001 From: Sean McBride Date: Fri, 19 Feb 2021 13:48:04 -0500 Subject: Fix undefined left shifting of negative numbers (#338) Undefined Bahavior Sanitizer errored here about left shifting negative numbers. --- test/dsets.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/dsets.c b/test/dsets.c index d79e3bb..5dcdbce 100644 --- a/test/dsets.c +++ b/test/dsets.c @@ -4041,7 +4041,7 @@ test_nbit_compound_2(hid_t file) power = HDpow(2.0F, (double)(precision[1] - 1)); orig_data[i][j].a.c = (char)(((long long)HDrandom() % (long long)power) << offset[1]); power = HDpow(2.0F, (double)(precision[2] - 1)); - orig_data[i][j].a.s = (short)(-((long long)HDrandom() % (long long)power) << offset[2]); + orig_data[i][j].a.s = (short)(-(((long long)HDrandom() % (long long)power) << offset[2])); orig_data[i][j].a.f = float_val[i][j]; power = HDpow(2.0F, (double)precision[3]); @@ -4057,7 +4057,7 @@ test_nbit_compound_2(hid_t file) for (n = 0; n < (size_t)array_dims[1]; n++) { power = HDpow(2.0F, (double)(precision[0] - 1)); orig_data[i][j].d[m][n].i = - (int)(-((long long)HDrandom() % (long long)power) << offset[0]); + (int)(-(((long long)HDrandom() % (long long)power) << offset[0])); power = HDpow(2.0F, (double)(precision[1] - 1)); orig_data[i][j].d[m][n].c = (char)(((long long)HDrandom() % (long long)power) << offset[1]); -- cgit v0.12