aeubanks added a comment. In D85545#2211070 <https://reviews.llvm.org/D85545#2211070>, @xbolva00 wrote:
> I check if all elements of init list are strings, so this is not > exactly true "struct checker" (I have no such info in that part of > code..) but I consider it good enough. Your test case is based on real > code? Does not seem so - well sure, we could construct many examples > where warning fires uselessly but my focus is on real world false > positive cases :) > > ut 11. 8. 2020 o 19:55 Arthur Eubanks via Phabricator > <revi...@reviews.llvm.org> napísal(a): > >> aeubanks added a comment. >> >> Actually sorry, it does still seem like there are false positives on >> structs. Reduced: >> >> $ cat /tmp/a.cpp >> >> struct A { >> const char* a; >> const char* b; >> const char* c; >> }; >> >> static constexpr A foo2 = A{"", >> "" >> "", >> ""}; >> >> $ ~/repos/llvm-project/build_cmake/bin/clang /tmp/a.cpp -o /dev/null -c >> -Wstring-concatenation >> /tmp/a.cpp:10:29: warning: suspicious concatenation of string literals in >> an array initialization; did you mean to separate the elements with a comma? >> [-Wstring-concatenation] >> "", >> ^ >> /tmp/a.cpp:9:29: note: place parentheses around the string literal to >> silence warning >> "" >> ^ >> 1 warning generated. >> >> Repository: >> >> rG LLVM Github Monorepo >> >> CHANGES SINCE LAST ACTION >> >> https://reviews.llvm.org/D85545/new/ >> >> https://reviews.llvm.org/D85545 Yup it's reduced from real world code, same link as before: https://source.chromium.org/chromium/chromium/src/+/master:third_party/dawn/src/dawn_native/Toggles.cpp;drc=80f927d763211ea8e6a6377f86282809c86dc107;l=32. Clearly if there are 3 strings in the struct and the initializer has three strings, then the warning shouldn't apply. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85545/new/ https://reviews.llvm.org/D85545 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits