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