Commit 666f7903 by Jakub Jelinek Committed by Jakub Jelinek

re PR c/80468 (ICE on invalid AVX512 code with -m32)

	PR c/80468
	* c-decl.c (finish_declspecs) <case cts_int_n>: If int_n_idx is not
	enabled, set specs->type to integer_type_node.

	* gcc.dg/pr80468.c: New test.

From-SVN: r247052
parent 25c28f47
2017-04-21 Jakub Jelinek <jakub@redhat.com>
PR c/80468
* c-decl.c (finish_declspecs) <case cts_int_n>: If int_n_idx is not
enabled, set specs->type to integer_type_node.
2017-04-03 Jonathan Wakely <jwakely@redhat.com> 2017-04-03 Jonathan Wakely <jwakely@redhat.com>
* c-array-notation.c: Fix typo in comment. * c-array-notation.c: Fix typo in comment.
......
...@@ -10929,9 +10929,12 @@ finish_declspecs (struct c_declspecs *specs) ...@@ -10929,9 +10929,12 @@ finish_declspecs (struct c_declspecs *specs)
case cts_int_n: case cts_int_n:
gcc_assert (!specs->long_p && !specs->short_p && !specs->long_long_p); gcc_assert (!specs->long_p && !specs->short_p && !specs->long_long_p);
gcc_assert (!(specs->signed_p && specs->unsigned_p)); gcc_assert (!(specs->signed_p && specs->unsigned_p));
specs->type = (specs->unsigned_p if (! int_n_enabled_p[specs->int_n_idx])
? int_n_trees[specs->int_n_idx].unsigned_type specs->type = integer_type_node;
: int_n_trees[specs->int_n_idx].signed_type); else
specs->type = (specs->unsigned_p
? int_n_trees[specs->int_n_idx].unsigned_type
: int_n_trees[specs->int_n_idx].signed_type);
if (specs->complex_p) if (specs->complex_p)
{ {
pedwarn (specs->locations[cdw_complex], OPT_Wpedantic, pedwarn (specs->locations[cdw_complex], OPT_Wpedantic,
......
2017-04-21 Jakub Jelinek <jakub@redhat.com>
PR c/80468
* gcc.dg/pr80468.c: New test.
2017-04-21 Martin Liska <mliska@suse.cz> 2017-04-21 Martin Liska <mliska@suse.cz>
PR tree-optimization/66278 PR tree-optimization/66278
......
/* PR c/80468 */
/* { dg-do compile { target { ! int128 } } } */
/* { dg-options "" } */
void
foo (void)
{
__attribute__ ((__vector_size__ (4 * sizeof (unsigned)))) __int128 b; /* { dg-error "is not supported on this target" } */
0 != b;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment