ccotter marked an inline comment as done.
ccotter added inline comments.
================
Comment at:
clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays.cpp:170-172
+ char init4[] = "abcdef";
+ // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: do not declare C-style arrays,
use std::array<> instead
+ // CHECK-FIXES: std::array<char, 7> init4 = { "abcdef" };
----------------
PiotrZSL wrote:
> I don't think this check should replace those strings, simply that could
> break code, image someone is using this later as an argument to some function
> that expect pointer.
> For strings std::string_view would be better alternative (at least add a
> bypass for this).
> And all those changes are not safe if variable is used for pointer arithmetic.
>
>
The logic I implemented should fix pointer arithmetic (e.g., `str + 1` is
replaced by `str.begin() + 1`. I have tests for this for `int[]`, but added
more for `char[]`. string_view is not appropriate conversion here since the
arrays may be modified etc.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D145138/new/
https://reviews.llvm.org/D145138
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits