NOAA-EMC / NCEPLIBS-bufr

The NCEPLIBS-bufr library contains routines and utilites for working with the WMO BUFR format.
Other
44 stars 19 forks source link

more bort tests, some documentation fixes, some misc tests #415

Closed edwardhartnett closed 1 year ago

edwardhartnett commented 1 year ago

Part of #381 Part of #397

Testing more borts().

jbathegit commented 1 year ago

BTW, I noticed in the developer CI run that a number of your new ufbstp tests were failing due to a SIGSEGV, rather than failing within the bort routine like we want:

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Also, at least two new tests are failing with memory leaks:

1: ==6968==ERROR: LeakSanitizer: detected memory leaks
1: 
1: Direct leak of 32 byte(s) in 1 object(s) allocated from:
1:     #0 0x7fb0dc424867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
1:     #1 0x7fb0dc0b7ef8  (/lib/x86_64-linux-gnu/libgfortran.so.5+0x22ef8)
1: 
1: Indirect leak of 512 byte(s) in 1 object(s) allocated from:
1:     #0 0x7fb0dc424867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
1:     #1 0x7fb0dc0b7ef8  (/lib/x86_64-linux-gnu/libgfortran.so.5+0x22ef8)
1: 
1: SUMMARY: AddressSanitizer: 544 byte(s) leaked in 2 allocation(s).

Of course it can be really hard to notice these things with test_bort, since the roles are reversed and a fail now gets interpreted as a pass. So I think we really need to get in the habit of digging through the developer run output to check for these.

edwardhartnett commented 1 year ago

OK, let's separate the bort testing from the documentation changes, in order to divide and conquer this PR. ;-)

I have put the tests (after fixing the ufbstp() seg faults) in new PR #422 .

Once those are merged I will circle around again to this PR. We will have a documentation meeting today to discuss some of the issues with the documentation changes in this PR.

edwardhartnett commented 1 year ago

The testing work in the PR has been submitted in #422

We will discuss some documentation issues at today's meeting, and then I will resumbit some of the documentation work as future PRs...