aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMarek Polacek <polacek@redhat.com>2016-06-08 06:39:10 +0000
committerMarek Polacek <mpolacek@gcc.gnu.org>2016-06-08 06:39:10 +0000
commit92a5f2bae5d0528d2eab43a12bef408a0ed781d5 (patch)
treef25f41dab1dcd5d2a05e3da964ef44446931df8b /gcc
parent6c40eb009161a4c9ef13e39ffd31e870d54df7bc (diff)
downloadgcc-92a5f2bae5d0528d2eab43a12bef408a0ed781d5.zip
gcc-92a5f2bae5d0528d2eab43a12bef408a0ed781d5.tar.gz
gcc-92a5f2bae5d0528d2eab43a12bef408a0ed781d5.tar.bz2
re PR c/71418 (gcc ICE on x86_64-linux-gnu in min_align_of_type, at stor-layout.c:2402)
PR c/71418 * c-decl.c (grokdeclarator): Check TYPE_P. * gcc.dg/noncompile/pr71418.c: New test. From-SVN: r237195
Diffstat (limited to 'gcc')
-rw-r--r--gcc/c/ChangeLog5
-rw-r--r--gcc/c/c-decl.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/noncompile/pr71418.c4
4 files changed, 15 insertions, 1 deletions
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index de23e36..8617f08 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,8 @@
+2016-06-08 Marek Polacek <polacek@redhat.com>
+
+ PR c/71418
+ * c-decl.c (grokdeclarator): Check TYPE_P.
+
2016-06-07 David Malcolm <dmalcolm@redhat.com>
* c-parser.c (c_parser_postfix_expression): In __builtin_offsetof
diff --git a/gcc/c/c-decl.c b/gcc/c/c-decl.c
index d79802e..ac83e2f 100644
--- a/gcc/c/c-decl.c
+++ b/gcc/c/c-decl.c
@@ -6313,7 +6313,7 @@ grokdeclarator (const struct c_declarator *declarator,
}
else if (TREE_CODE (type) == FUNCTION_TYPE)
error_at (loc, "alignment specified for function %qE", name);
- else if (declspecs->align_log != -1)
+ else if (declspecs->align_log != -1 && TYPE_P (type))
{
alignas_align = 1U << declspecs->align_log;
if (alignas_align < min_align_of_type (type))
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 406cc03..607f21c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2016-06-08 Marek Polacek <polacek@redhat.com>
+
+ PR c/71418
+ * gcc.dg/noncompile/pr71418.c: New test.
+
2016-06-07 Jan Hubicka <hubicka@ucw.cz>
* gcc.dg/ipa/inlinehint-4.c: Disable partial inlining.
diff --git a/gcc/testsuite/gcc.dg/noncompile/pr71418.c b/gcc/testsuite/gcc.dg/noncompile/pr71418.c
new file mode 100644
index 0000000..e3243f3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/noncompile/pr71418.c
@@ -0,0 +1,4 @@
+/* PR c/71418 */
+/* { dg-do compile } */
+
+_Alignas (int) int a[7++]; /* { dg-error "lvalue required" } */