re PR middle-end/36997 (ICE with incompatible arg to '__builtin_ia32_paddq)

2008-08-01  Richard Guenther  <rguenther@suse.de>

	PR middle-end/36997
	* gimplify.c (gimplify_call_expr): Set error_mark_node on GS_ERROR.

	* gcc.dg/pr36997.c: New testcase.

From-SVN: r138515
This commit is contained in:
Richard Guenther 2008-08-01 13:12:38 +00:00 committed by Richard Biener
parent 6b093baca5
commit df8fa7003b
4 changed files with 19 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2008-08-01 Richard Guenther <rguenther@suse.de>
PR middle-end/36997
* gimplify.c (gimplify_call_expr): Set error_mark_node on GS_ERROR.
2008-08-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36988

View File

@ -2465,7 +2465,7 @@ gimplify_call_expr (tree *expr_p, gimple_seq *pre_p, bool want_value)
}
else
{
*expr_p = NULL_TREE;
*expr_p = error_mark_node;
return GS_ERROR;
}

View File

@ -1,3 +1,8 @@
2008-08-01 Richard Guenther <rguenther@suse.de>
PR middle-end/36997
* gcc.dg/pr36997.c: New testcase.
2008-08-01 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/deferred_const1.adb: New test.

View File

@ -0,0 +1,8 @@
/* { dg-do compile { target x86_64-*-* i?86-*-* } } */
/* { dg-options "-std=c99" } */
typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
__m64 _mm_add_si64 (__m64 __m1, __m64 __m2)
{
return (__m64) __builtin_ia32_paddq ((long long)__m1, (long long)__m2); /* { dg-error "incompatible type" } */
}