[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-11-08 Thread Michael Benfield via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG2db66f8d48be: [clang] Fortify warning for scanf calls with field width too big. (authored by mbenfield). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-11-03 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 384431. mbenfield added a comment. Ignore specifiers with *. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: clang/include/clang/Basic/DiagnosticSemaKinds.

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-11-01 Thread Michael Benfield via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG5a8c1736289f: [clang] Fortify warning for scanf calls with field width too big. (authored by mbenfield). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Elliott Hughes via Phabricator via cfe-commits
enh added a comment. In D111833#3094868 , @mbenfield wrote: > Previously this patch did not cover %c and %[, but now it does. thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://revi

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield added a comment. Previously his patch did not cover %c and %[, but now it does. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 ___ cfe-commits mailin

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 383161. mbenfield added a comment. Support %c and %[ specifiers. Changed the diagnostic message to accommodate. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Fil

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Elliott Hughes via Phabricator via cfe-commits
enh accepted this revision. enh added a comment. add tests for %c and %[ too? (it's genuinely unclear to me from a quick skim whether this patch covers them.) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D1118

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield added a comment. Thanks for reverting. Here's another try. This just shouldn't be warning on any specifier other than %s, so I fixed that. As far as not pointing at code for the second warning, I verified manually that it does now point at code even when warning twice, but it doesn't

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 383064. mbenfield added a comment. Only diagnose if conversion specifier is %s. Give the location of the particular argument rather than the location of the function call. Test to make sure we don't warn on %d. Repository: rG LLVM Github Monorepo CHA

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-28 Thread Nico Weber via Phabricator via cfe-commits
thakis added a comment. This doesn't seem to be working very well: thakis@thakis:~/src/llvm-project$ cat test.cc #include #include #include int main() { uint16_t hextets[8]; int chars_scanned; char buf[] = "1234:5678:9abc:def0:1234:5678:9abc:def0"; sscanf(buf,

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-27 Thread Michael Benfield via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG15e3d39110fa: [clang] Fortify warning for scanf calls with field width too big. (authored by mbenfield). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-27 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 382845. mbenfield added a comment. const Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: clang/include/clang/Basic/DiagnosticSemaKinds.td clang/lib/Sema/

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-27 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 382840. mbenfield added a comment. fix function_ref use-after-free Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: clang/include/clang/Basic/DiagnosticSema

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-27 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 382802. mbenfield added a comment. rebase and rerun tests Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: clang/include/clang/Basic/DiagnosticSemaKinds.td

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-25 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 382075. mbenfield added a comment. rebase and rerun tests Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: clang/include/clang/Basic/DiagnosticSemaKinds.td

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-20 Thread George Burgess IV via Phabricator via cfe-commits
george.burgess.iv accepted this revision. george.burgess.iv added a comment. LGTM. Thanks again! Comment at: clang/lib/Sema/SemaChecking.cpp:735 + +auto *FormatExpr = TheCall->getArg(FormatIndex)->IgnoreParenImpCasts(); + nit: const auto if possible (and be

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-20 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield updated this revision to Diff 380956. mbenfield added a comment. respond to comments: null to NUL, remove stray space, use function_ref Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111833/new/ https://reviews.llvm.org/D111833 Files: c

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-19 Thread George Burgess IV via Phabricator via cfe-commits
george.burgess.iv accepted this revision. george.burgess.iv added a comment. This revision is now accepted and ready to land. LGTM % nits -- thanks for this! :) Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:836 +def warn_fortify_scanf_overflow : Warning < + "'

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-15 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:662 +if (Index < FD->getNumParams()) { + if (const auto *POS = + FD->getParamDecl(Index)->getAttr()) enh wrote: > mbenfield wrote: > > enh wrote: > > > (stray tabs?

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-15 Thread Elliott Hughes via Phabricator via cfe-commits
enh added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:662 +if (Index < FD->getNumParams()) { + if (const auto *POS = + FD->getParamDecl(Index)->getAttr()) mbenfield wrote: > enh wrote: > > (stray tabs?) > Not sure what you'r

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-15 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:662 +if (Index < FD->getNumParams()) { + if (const auto *POS = + FD->getParamDecl(Index)->getAttr()) enh wrote: > (stray tabs?) Not sure what you're referring to. A

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-14 Thread Elliott Hughes via Phabricator via cfe-commits
enh added a comment. "shut up and take my money!" :-) Comment at: clang/lib/Sema/SemaChecking.cpp:662 +if (Index < FD->getNumParams()) { + if (const auto *POS = + FD->getParamDecl(Index)->getAttr()) (stray tabs?) Repository: rG LLVM Gi

[PATCH] D111833: [clang] Fortify warning for scanf calls with field width too big.

2021-10-14 Thread Michael Benfield via Phabricator via cfe-commits
mbenfield created this revision. mbenfield added reviewers: enh, gbiv. Herald added a reviewer: george.burgess.iv. mbenfield requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D11