20 lines · cpp
1// RUN: %clang_cl_asan %Od %s %Fe%t2// RUN: %env_asan_opts=handle_sigill=1 not %run %t 2>&1 | FileCheck %s3// msvc doesn't have a __builtin_trap equivalent4// XFAIL: msvc5 6// Test the error output from an illegal instruction.7 8#include <stdio.h>9 10int main() {11 puts("before ud2a");12 fflush(stdout);13 __builtin_trap();14 return 0;15}16// CHECK: before ud2a17// CHECK: ERROR: AddressSanitizer: illegal-instruction on unknown address [[ADDR:0x[^ ]*]]18// CHECK-SAME: (pc [[ADDR]] {{.*}})19// CHECK-NEXT: #0 {{.*}} in main {{.*}}illegal_instruction.cpp:{{.*}}20