PR c/70883 - inconsistent error message for calls to __builtin_add_overflow
authorMartin Sebor <msebor@redhat.com>
Thu, 9 Jun 2016 16:32:25 +0000 (16:32 +0000)
committerMartin Sebor <msebor@gcc.gnu.org>
Thu, 9 Jun 2016 16:32:25 +0000 (10:32 -0600)
PR c/70883 - inconsistent error message for calls to __builtin_add_overflow
  with too few arguments

gcc/c-family/ChangeLog:
2016-06-09  Martin Sebor  <msebor@redhat.com>

PR c/70883
* c-common.c (builtin_function_validate_nargs): Make text of error
message consistent with others like it.

gcc/testsuite/ChangeLog:
2016-06-09  Martin Sebor  <msebor@redhat.com>

PR c/70883
* c-c++-common/builtin-arith-overflow-1.c: Adjust diagnostic text.
* gcc.dg/builtin-constant_p-1.c: Same.
* gcc.dg/builtins-error.c: Same.
* gcc.dg/pr70859.c: Same.

From-SVN: r237268

gcc/c-family/ChangeLog
gcc/c-family/c-common.c
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/builtin-arith-overflow-1.c
gcc/testsuite/gcc.dg/builtin-constant_p-1.c
gcc/testsuite/gcc.dg/builtins-error.c
gcc/testsuite/gcc.dg/pr70859.c

index 5ebeaf90ff5d0b9d47f1367455ca965a99535d63..23ff800e41f5367d87912fccd246518224ecc058 100644 (file)
@@ -1,3 +1,9 @@
+2016-06-09  Martin Sebor  <msebor@redhat.com>
+
+       PR c/70883
+       * c-common.c (builtin_function_validate_nargs): Make text of error
+       message consistent with others like it.
+
 2016-06-08  Martin Sebor  <msebor@redhat.com>
            Jakub Jelinek  <jakub@redhat.com>
 
index d008b040d0d071cd7b2c0a4645f355ec69feb3b3..94005ff8260b9a29c58db4f5262d186e5abc556a 100644 (file)
@@ -9828,7 +9828,7 @@ builtin_function_validate_nargs (location_t loc, tree fndecl, int nargs,
 {
   if (nargs < required)
     {
-      error_at (loc, "not enough arguments to function %qE", fndecl);
+      error_at (loc, "too few arguments to function %qE", fndecl);
       return false;
     }
   else if (nargs > required)
index 6e792aad5efaeacf845be421c14e0ebcde7bc2d4..9ae6294a1ce2d330e00a7950446f461061e84357 100644 (file)
@@ -1,3 +1,11 @@
+2016-06-09  Martin Sebor  <msebor@redhat.com>
+
+       PR c/70883
+       * c-c++-common/builtin-arith-overflow-1.c: Adjust diagnostic text.
+       * gcc.dg/builtin-constant_p-1.c: Same.
+       * gcc.dg/builtins-error.c: Same.
+       * gcc.dg/pr70859.c: Same.
+
 2016-06-09  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
 
        * gcc.c-torture/execute/bswap-2.c: Require int32plus.
index 0d97f6a9fad4a5619ce22fd8c8f4d38539cfc5b1..3332c4ec44d17e59258305659f06d36d384b7a32 100644 (file)
@@ -3,12 +3,12 @@
 int
 f1 (void)
 {
-  int x = __builtin_add_overflow ();   /* { dg-error "not enough arguments to function" } */
-  x += __builtin_sub_overflow ();      /* { dg-error "not enough arguments to function" } */
-  x += __builtin_mul_overflow ();      /* { dg-error "not enough arguments to function" } */
-  x += __builtin_add_overflow_p ();    /* { dg-error "not enough arguments to function" } */
-  x += __builtin_sub_overflow_p ();    /* { dg-error "not enough arguments to function" } */
-  x += __builtin_mul_overflow_p ();    /* { dg-error "not enough arguments to function" } */
+  int x = __builtin_add_overflow ();   /* { dg-error "too few arguments to function" } */
+  x += __builtin_sub_overflow ();      /* { dg-error "too few arguments to function" } */
+  x += __builtin_mul_overflow ();      /* { dg-error "too few arguments to function" } */
+  x += __builtin_add_overflow_p ();    /* { dg-error "too few arguments to function" } */
+  x += __builtin_sub_overflow_p ();    /* { dg-error "too few arguments to function" } */
+  x += __builtin_mul_overflow_p ();    /* { dg-error "too few arguments to function" } */
   return x;
 }
 
@@ -21,7 +21,7 @@ f2 (int a, int b, int *c, int d)
   x += __builtin_add_overflow_p (a, b, d, d);  /* { dg-error "too many arguments to function" } */
   x += __builtin_sub_overflow_p (a, b, d, d, 1, d);    /* { dg-error "too many arguments to function" } */
   x += __builtin_mul_overflow_p (a, b, d, d);  /* { dg-error "too many arguments to function" } */
-  
+
   return x;
 }
 
index b0b34f4a1e170a185c62168d9575329bddc9c498..f177fe34b2cf69e9262999406c44a837ee91d8f5 100644 (file)
@@ -2,9 +2,9 @@
 
 int main()
 {
-  if (__builtin_constant_p ()) /* { dg-error "not enough" } */
+  if (__builtin_constant_p ()) /* { dg-error "too few arguments" } */
     return 0;
-  if (__builtin_constant_p (5, 6)) /* { dg-error "too many" } */
+  if (__builtin_constant_p (5, 6)) /* { dg-error "too many arguments" } */
     return 1;
   return 0;
 }
index 9ddf1b1e2ae13ebcb7d4d8cb4d4ff1104c32a61b..945d239d6081eca7b143ba0ec3a3218e3acd99b7 100644 (file)
@@ -23,19 +23,19 @@ int test1(struct X x)
 
 int test2(double x)
 {
-  if (x ==  1) return __builtin_fpclassify(1,2,3,4,5); /* { dg-error "not enough arguments" } */
-  if (x ==  2) return __builtin_isfinite(); /* { dg-error "not enough arguments" } */
-  if (x ==  3) return __builtin_isinf_sign(); /* { dg-error "not enough arguments" } */
-  if (x ==  4) return __builtin_isinf(); /* { dg-error "not enough arguments" } */
-  if (x ==  5) return __builtin_isnan(); /* { dg-error "not enough arguments" } */
-  if (x ==  6) return __builtin_isnormal(); /* { dg-error "not enough arguments" } */
-  if (x ==  7) return __builtin_isgreater(x); /* { dg-error "not enough arguments" } */
-  if (x ==  8) return __builtin_isgreaterequal(x); /* { dg-error "not enough arguments" } */
-  if (x ==  9) return __builtin_isless(x); /* { dg-error "not enough arguments" } */
-  if (x == 10) return __builtin_islessequal(x); /* { dg-error "not enough arguments" } */
-  if (x == 11) return __builtin_islessgreater(x); /* { dg-error "not enough arguments" } */
-  if (x == 12) return __builtin_isunordered(x); /* { dg-error "not enough arguments" } */
-  if (x == 13) return __builtin_signbit(); /* { dg-error "not enough arguments" } */
+  if (x ==  1) return __builtin_fpclassify(1,2,3,4,5); /* { dg-error "too few arguments" } */
+  if (x ==  2) return __builtin_isfinite(); /* { dg-error "too few arguments" } */
+  if (x ==  3) return __builtin_isinf_sign(); /* { dg-error "too few arguments" } */
+  if (x ==  4) return __builtin_isinf(); /* { dg-error "too few arguments" } */
+  if (x ==  5) return __builtin_isnan(); /* { dg-error "too few arguments" } */
+  if (x ==  6) return __builtin_isnormal(); /* { dg-error "too few arguments" } */
+  if (x ==  7) return __builtin_isgreater(x); /* { dg-error "too few arguments" } */
+  if (x ==  8) return __builtin_isgreaterequal(x); /* { dg-error "too few arguments" } */
+  if (x ==  9) return __builtin_isless(x); /* { dg-error "too few arguments" } */
+  if (x == 10) return __builtin_islessequal(x); /* { dg-error "too few arguments" } */
+  if (x == 11) return __builtin_islessgreater(x); /* { dg-error "too few arguments" } */
+  if (x == 12) return __builtin_isunordered(x); /* { dg-error "too few arguments" } */
+  if (x == 13) return __builtin_signbit(); /* { dg-error "too few arguments" } */
   return 0;
 }
 
index 0a3c8437c66d3350592f9160faf60f0802d0c3ce..e71b05237b080258c3f0c52ffdf08fd354e399d5 100644 (file)
@@ -41,19 +41,19 @@ fn0 (int n)
 int
 fn1 (void)
 {
-  if (__builtin_constant_p ()) /* { dg-error "7:not enough" } */
+  if (__builtin_constant_p ()) /* { dg-error "7:too few" } */
     return 0;
   if (__builtin_constant_p (1, 2)) /* { dg-error "7:too many" } */
     return 1;
-  if (__builtin_isfinite ()) /* { dg-error "7:not enough" } */
+  if (__builtin_isfinite ()) /* { dg-error "7:too few" } */
     return 3;
   if (__builtin_isfinite (1, 2)) /* { dg-error "7:too many" } */
     return 4;
-  if (__builtin_isless (0)) /* { dg-error "7:not enough" } */
+  if (__builtin_isless (0)) /* { dg-error "7:too few" } */
     return 5;
   if (__builtin_isless (1, 2, 3)) /* { dg-error "7:too many" } */
     return 6;
-  if (__builtin_fpclassify (1, 2, 3, 4, 5)) /* { dg-error "7:not enough" } */
+  if (__builtin_fpclassify (1, 2, 3, 4, 5)) /* { dg-error "7:too few" } */
     return 7;
   if (__builtin_fpclassify (1, 2, 3, 4, 5, r, 6)) /* { dg-error "7:too many" } */
     return 8;
@@ -61,7 +61,7 @@ fn1 (void)
     return 9;
   if (__builtin_assume_aligned (p, r, p, p)) /* { dg-error "7:too many" } */
     return 10;
-  if (__builtin_add_overflow ()) /* { dg-error "7:not enough" } */
+  if (__builtin_add_overflow ()) /* { dg-error "7:too few" } */
     return 11;
   if (__builtin_add_overflow (1, 2, 3, &r)) /* { dg-error "7:too many" } */
     return 12;