Bug 1557338 - Fix up TestSprintfLiteral.cpp for warnings on clang trunk r=andi
authorDavid Major <dmajor@mozilla.com>
Mon, 01 Jul 2019 21:37:44 +0000
changeset 540493 f0ac391dd02a4296a724462cdfa3c89cc8e39a00
parent 540492 358e1d1cc617c4cd801df3b8a1f756bd11bf3e4a
child 540494 b8dfb4b00154e6e693a523e223e16c216c56487f
push id11529
push userarchaeopteryx@coole-files.de
push dateThu, 04 Jul 2019 15:22:33 +0000
treeherdermozilla-beta@ebb510a784b8 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersandi
bugs1557338
milestone69.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1557338 - Fix up TestSprintfLiteral.cpp for warnings on clang trunk r=andi LLVM r356397 added some new warnings to the compiler that in this file complain about `size argument is too large; destination buffer has size 100, but size argument is 101`. The easiest path is to just remove those lines; doing so doesn't really weaken the test coverage of the SprintfLiteral checker. Differential Revision: https://phabricator.services.mozilla.com/D36515
build/clang-plugin/tests/TestSprintfLiteral.cpp
--- a/build/clang-plugin/tests/TestSprintfLiteral.cpp
+++ b/build/clang-plugin/tests/TestSprintfLiteral.cpp
@@ -1,19 +1,16 @@
 #include <cstdio>
 
 void bad() {
   char x[100];
   snprintf(x, sizeof(x), "bar"); // expected-error {{Use SprintfLiteral instead of snprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to snprintf accidentally.}}
   snprintf(x, 100, "bar"); // expected-error {{Use SprintfLiteral instead of snprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to snprintf accidentally.}}
-  snprintf(x, 101, "bar"); // expected-error {{Use SprintfLiteral instead of snprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to snprintf accidentally.}}
   const int hundred = 100;
   snprintf(x, hundred, "bar"); // expected-error {{Use SprintfLiteral instead of snprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to snprintf accidentally.}}
-  const int hundredandone = 101;
-  snprintf(x, hundredandone, "bar"); // expected-error {{Use SprintfLiteral instead of snprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to snprintf accidentally.}}
 }
 
 void ok() {
   char x[100];
   int y;
   snprintf(x, sizeof(y), "what");
 
   snprintf(x, 50, "what");
@@ -22,21 +19,18 @@ void ok() {
   nothundred = 99;
   snprintf(x, nothundred, "what");
 }
 
 void vargs_bad(va_list args) {
   char x[100];
   vsnprintf(x, sizeof(x), "bar", args); // expected-error {{Use VsprintfLiteral instead of vsnprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to vsnprintf accidentally.}}
   vsnprintf(x, 100, "bar", args); // expected-error {{Use VsprintfLiteral instead of vsnprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to vsnprintf accidentally.}}
-  vsnprintf(x, 101, "bar", args); // expected-error {{Use VsprintfLiteral instead of vsnprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to vsnprintf accidentally.}}
   const int hundred = 100;
   vsnprintf(x, hundred, "bar", args); // expected-error {{Use VsprintfLiteral instead of vsnprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to vsnprintf accidentally.}}
-  const int hundredandone = 101;
-  vsnprintf(x, hundredandone, "bar", args); // expected-error {{Use VsprintfLiteral instead of vsnprintf when writing into a character array.}} expected-note {{This will prevent passing in the wrong size to vsnprintf accidentally.}}
 }
 
 void vargs_good(va_list args) {
   char x[100];
   int y;
   vsnprintf(x, sizeof(y), "what", args);
 
   vsnprintf(x, 50, "what", args);