Hi Karl, >> I believe that the AddressSanitizer should normally stop with a non-zero > error code right after the first error. > > I have many tests within each executable test application, forcing the > application to exit on the first error is not optimal since it means I > cannot get an overview of all the issues and triage/fix them in logical > order. Instead I have to test/fix/retest every time >
That's by design and isn't to do with how CMake integrates asan; i.e. it's just how asan works. The idea being that once you hit a memory corruption then any further results can't be relied on. From the asan documentation: http://clang.llvm.org/docs/AddressSanitizer.html "If a bug is detected, the program will print an error message to stderr and exit with a non-zero exit code. AddressSanitizer exits on the first detected error. This is by design: - This approach allows AddressSanitizer to produce faster and smaller generated code (both by ~5%). - Fixing bugs becomes unavoidable. AddressSanitizer does not produce false alarms. Once a memory corruption occurs, the program is in an inconsistent state, which could lead to confusing results and potentially misleading subsequent reports. " - Chuck
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers