1 // compile & generate coverage data using: 2 // clang++ -g -o test-linux_x86_64 -fsanitize=address -fsanitize-coverage=bb test.cpp foo.cpp 3 // ASAN_OPTIONS="coverage=1" ./test-linux_x86_64 && mv test-linux_x86_64.*.sancov test-linux_x86_64.sancov 4 // ASAN_OPTIONS="coverage=1" ./test-linux_x86_64 1 && mv test-linux_x86_64.*.sancov test-linux_x86_64-1.sancov 5 6 #include <stdio.h> 7 #include <string> 8 9 void foo(); 10 11 __attribute__((noinline)) 12 std::string bar(std::string str) { printf("bar\n"); return str; } 13 14 int main(int argc, char **argv) { 15 if (argc == 2) 16 foo(); 17 bar("str"); 18 printf("main\n"); 19 } 20