20 lines · cpp
1// RUN: %clang_cc1 -std=c++20 -Wunsafe-buffer-usage \2// RUN: -fsafe-buffer-usage-suggestions \3// RUN: -fdiagnostics-parseable-fixits %s 2>&1 | FileCheck %s4 5void safe_array_initing_safe_ptr(unsigned idx) {6 int buffer[10];7 // CHECK-NOT: fix-it:"{{.*}}":{[[@LINE-1]]:8 int* ptr = buffer;9 // CHECK-NOT: fix-it:"{{.*}}":{[[@LINE-1]]:10}11 12void safe_array_initing_unsafe_ptr(unsigned idx) {13 int buffer[123321123];14 // CHECK-NOT: fix-it:"{{.*}}":{[[@LINE-1]]:15 int* ptr = buffer;16 // CHECK-DAG: fix-it:"{{.*}}":{[[@LINE-1]]:3-[[@LINE-1]]:7}:"std::span<int>"17 // CHECK-NOT: fix-it:"{{.*}}":{[[@LINE-1]]:{{.*}}12332112318 ptr[idx + 1] = 0;19}20