1 | // RUN: %clang_cl_asan %Od %s %Fe%t |
2 | // RUN: %env_asan_opts=handle_sigfpe=1 not %run %t 2>&1 | FileCheck %s |
3 | |
4 | // Test the error output from dividing by zero. |
5 | |
6 | #include <stdio.h> |
7 | |
8 | int main() { |
9 | puts(s: "before ud2a" ); |
10 | fflush(stdout); |
11 | volatile int numerator = 1; |
12 | volatile int divisor = 0; |
13 | return numerator / divisor; |
14 | } |
15 | // CHECK: before ud2a |
16 | // CHECK: ERROR: AddressSanitizer: int-divide-by-zero on unknown address [[ADDR:0x[^ ]*]] |
17 | // CHECK-SAME: (pc [[ADDR]] {{.*}}) |
18 | // CHECK-NEXT: #0 {{.*}} in main {{.*}}integer_divide_by_zero.cpp:{{.*}} |
19 | |