diff --git a/src/Desc.cc b/src/Desc.cc index 4511f59614..40ef4c6677 100644 --- a/src/Desc.cc +++ b/src/Desc.cc @@ -164,7 +164,14 @@ void ODesc::Add(double d, bool no_exp) Add(tmp); - if ( nearbyint(d) == d && isfinite(d) && ! strchr(tmp, 'e') ) + auto approx_equal = [](double a, double b, double tolerance = 1e-6) -> bool + { + auto v = a - b; + return v < 0 ? -v < tolerance : v < tolerance; + }; + + if ( approx_equal(d, nearbyint(d), 1e-9) && + isfinite(d) && ! strchr(tmp, 'e') ) // disambiguate from integer Add(".0"); } diff --git a/testing/btest/Baseline/core.print-interval/out b/testing/btest/Baseline/core.print-interval/out index 701e5f9cdb..683dd80adc 100644 --- a/testing/btest/Baseline/core.print-interval/out +++ b/testing/btest/Baseline/core.print-interval/out @@ -8,12 +8,12 @@ 1.0 day 10.0 hrs 17.0 mins 36.0 secs 789.0 msecs 123.449984 usecs -1.0 day -10.0 hrs -17.0 mins -36.0 secs -789.0 msecs -123.449984 usecs 1.001 usecs -1.0 msec 1 usec +1.0 msec 1.0 usec 11.0 msecs 8.0 days 12.0 hrs 7.0 hrs 30.0 mins 6.0 mins 30.0 secs 5.0 secs 500.0 msecs -4.0 msecs 500 usecs +4.0 msecs 500.0 usecs 3.5 usecs 2.0 days 2.0 secs diff --git a/testing/btest/Baseline/scripts.base.frameworks.logging.ascii-double/test.log b/testing/btest/Baseline/scripts.base.frameworks.logging.ascii-double/test.log index 21457f916c..743312d7f2 100644 --- a/testing/btest/Baseline/scripts.base.frameworks.logging.ascii-double/test.log +++ b/testing/btest/Baseline/scripts.base.frameworks.logging.ascii-double/test.log @@ -22,8 +22,8 @@ 178999999999999996376899522972626047077637637819240219954027593177370961667659291027329061638406108931437333529420935752785895444161234074984843178962619172326295244262722141766382622299223626438470088150218987997954747866198184686628013966119769261150988554952970462018533787926725176560021258785656871583744.0 -178999999999999996376899522972626047077637637819240219954027593177370961667659291027329061638406108931437333529420935752785895444161234074984843178962619172326295244262722141766382622299223626438470088150218987997954747866198184686628013966119769261150988554952970462018533787926725176560021258785656871583744.0 0.000012 -0 --0 +0.0 +-0.0 inf -inf 0.0 diff --git a/testing/external/commit-hash.zeek-testing b/testing/external/commit-hash.zeek-testing index 5c53cb6426..36c7613b60 100644 --- a/testing/external/commit-hash.zeek-testing +++ b/testing/external/commit-hash.zeek-testing @@ -1 +1 @@ -da47ae786562da18910d994b7868530929db6271 +96e78328a1a9e6c07e725b282c293728f70737f0