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

Reply via email to