xref: /aosp_15_r20/external/compiler-rt/test/ubsan/TestCases/Integer/summary.cpp (revision 7c3d14c8b49c529e04be81a3ce6f5cc23712e4c6)
1*7c3d14c8STreehugger Robot // RUN: %clangxx -fsanitize=integer %s -o %t
2*7c3d14c8STreehugger Robot // RUN: %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-NOTYPE
3*7c3d14c8STreehugger Robot // RUN: %env_ubsan_opts=report_error_type=1 %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-TYPE
4*7c3d14c8STreehugger Robot // REQUIRES: ubsan-asan
5*7c3d14c8STreehugger Robot 
6*7c3d14c8STreehugger Robot #include <stdint.h>
7*7c3d14c8STreehugger Robot 
main()8*7c3d14c8STreehugger Robot int main() {
9*7c3d14c8STreehugger Robot   (void)(uint64_t(10000000000000000000ull) + uint64_t(9000000000000000000ull));
10*7c3d14c8STreehugger Robot   // CHECK-NOTYPE: SUMMARY: AddressSanitizer: undefined-behavior {{.*}}summary.cpp:[[@LINE-1]]:44
11*7c3d14c8STreehugger Robot   // CHECK-TYPE: SUMMARY: AddressSanitizer: unsigned-integer-overflow {{.*}}summary.cpp:[[@LINE-2]]:44
12*7c3d14c8STreehugger Robot   return 0;
13*7c3d14c8STreehugger Robot }
14