re PR c/68657 ("gcc -Werror=sign-conversion test.i" shows invalid: -Wsign-conversion...
authorJakub Jelinek <jakub@redhat.com>
Fri, 10 Jun 2016 19:46:13 +0000 (21:46 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 10 Jun 2016 19:46:13 +0000 (21:46 +0200)
PR c/68657
* c.opt (Wpsabi): Add Warning flag.

* gcc.target/i386/pr68657.c: New test.

From-SVN: r237316

gcc/c-family/ChangeLog
gcc/c-family/c.opt
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr68657.c [new file with mode: 0644]

index 88cbd871d107383ef15b48d81a8b185aaece47a1..a53fc9cceb57e510259dd499172ed55d2bf12fba 100644 (file)
@@ -1,3 +1,8 @@
+2016-06-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/68657
+       * c.opt (Wpsabi): Add Warning flag.
+
 2016-06-10  Martin Sebor  <msebor@redhat.com>
 
        PR c/71392
index 918df16ea99af7bd61312ed6b760b086669d9b23..761a83bcfb38b86ab22a3f0dbe1c0c6c43b3a64b 100644 (file)
@@ -265,7 +265,7 @@ C++ ObjC++ Var(warn_abi_tag) Warning
 Warn if a subobject has an abi_tag attribute that the complete object type does not have.
 
 Wpsabi
-C ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Undocumented LangEnabledBy(C ObjC C++ ObjC++,Wabi)
+C ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Warning Undocumented LangEnabledBy(C ObjC C++ ObjC++,Wabi)
 
 Waddress
 C ObjC C++ ObjC++ Var(warn_address) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)
index f866a4340878825d46139cb04693a416843114d2..cf9c24bb40e6426e74643ab9d913f7922aa13f7c 100644 (file)
@@ -1,5 +1,8 @@
 2016-06-10  Jakub Jelinek  <jakub@redhat.com>
 
+       PR c/68657
+       * gcc.target/i386/pr68657.c: New test.
+
        PR inline-asm/68843
        * gcc.target/i386/pr68843-2.c: Add dg-do run and empty dg-options.
        (test): Add -masm=intel alternatives.
diff --git a/gcc/testsuite/gcc.target/i386/pr68657.c b/gcc/testsuite/gcc.target/i386/pr68657.c
new file mode 100644 (file)
index 0000000..6f0d498
--- /dev/null
@@ -0,0 +1,15 @@
+/* PR c/68657 */
+/* { dg-options "-mno-avx512f -Werror=psabi" } */
+
+typedef int V __attribute__((vector_size (64)));
+
+void foo (V x, V *y) { /* { dg-error "AVX512F vector argument without AVX512F enabled" } */
+  *y = x;
+}
+
+V bar (V *x) {         /* { dg-error "AVX512F vector return without AVX512F enabled" } */
+  return *x;
+}
+
+/* { dg-message "The ABI for passing parameters with 64-byte alignment has changed" "" { target *-*-* } 6 } */
+/* { dg-message "some warnings being treated as errors" "" { target *-*-* } 0 } */