Drop valgrind from CI and instead enable ASan

The recently added ioctl use is reported as a false-positive by valgrind.
I tried moving it to different compilers/versions two times and only
hit further issues that were valgrind's fault.

Also includes a tiny fix.
This commit is contained in:
sfan5 2024-01-20 18:18:00 +01:00
parent 4259ac96ea
commit c9e10e1dd9
2 changed files with 6 additions and 5 deletions

View File

@ -86,7 +86,7 @@ jobs:
- name: Install deps
run: |
source ./util/ci/common.sh
install_linux_deps clang-7 valgrind
install_linux_deps clang-7 llvm
- name: Build
run: |
@ -94,15 +94,12 @@ jobs:
env:
CC: clang-7
CXX: clang++-7
CMAKE_FLAGS: '-DCMAKE_C_FLAGS="-fsanitize=address" -DCMAKE_CXX_FLAGS="-fsanitize=address"'
- name: Unittest
run: |
./bin/minetest --run-unittests
- name: Valgrind
run: |
valgrind --leak-check=full --leak-check-heuristics=all --undef-value-errors=no --error-exitcode=9 ./bin/minetest --run-unittests
# Current clang version
clang_14:
runs-on: ubuntu-22.04

View File

@ -108,6 +108,8 @@ void TestDataStructures::testMap1()
break;
}
UASSERT(once);
map.clear(); // ASan complains about stack-use-after-scope otherwise
}
void TestDataStructures::testMap2()
@ -121,6 +123,8 @@ void TestDataStructures::testMap2()
UASSERT(t0.deleted);
UASSERT(!t1.copied);
UASSERT(!t1.deleted);
map.clear();
}
void TestDataStructures::testMap3()