re PR c/79413 (ICE in make_ssa_name_fn, at tree-ssanames.c:265)

PR c/79413
	* gimplify.h (is_gimple_sizepos): Only test for INTEGER_CST constants,
	not arbitrary TREE_CONSTANT.

	* gcc.c-torture/compile/pr79413.c: New test.

From-SVN: r245304
This commit is contained in:
Jakub Jelinek 2017-02-09 15:26:40 +01:00 committed by Jakub Jelinek
parent f08683a154
commit 28f6839be1
4 changed files with 21 additions and 1 deletions

View File

@ -1,5 +1,9 @@
2017-02-09 Jakub Jelinek <jakub@redhat.com> 2017-02-09 Jakub Jelinek <jakub@redhat.com>
PR c/79413
* gimplify.h (is_gimple_sizepos): Only test for INTEGER_CST constants,
not arbitrary TREE_CONSTANT.
PR c/79431 PR c/79431
* gimplify.c (gimplify_adjust_omp_clauses): Ignore * gimplify.c (gimplify_adjust_omp_clauses): Ignore
"omp declare target link" attribute unless is_global_var. "omp declare target link" attribute unless is_global_var.

View File

@ -99,7 +99,7 @@ is_gimple_sizepos (tree expr)
but that will cause problems if this type is from outside the function. but that will cause problems if this type is from outside the function.
It's OK to have that here. */ It's OK to have that here. */
return (expr == NULL_TREE return (expr == NULL_TREE
|| TREE_CONSTANT (expr) || TREE_CODE (expr) == INTEGER_CST
|| TREE_CODE (expr) == VAR_DECL || TREE_CODE (expr) == VAR_DECL
|| CONTAINS_PLACEHOLDER_P (expr)); || CONTAINS_PLACEHOLDER_P (expr));
} }

View File

@ -1,5 +1,8 @@
2017-02-09 Jakub Jelinek <jakub@redhat.com> 2017-02-09 Jakub Jelinek <jakub@redhat.com>
PR c/79413
* gcc.c-torture/compile/pr79413.c: New test.
PR c++/79429 PR c++/79429
* c-c++-common/gomp/pr79429.c: New test. * c-c++-common/gomp/pr79429.c: New test.
* g++.dg/gomp/pr79429.C: New test. * g++.dg/gomp/pr79429.C: New test.

View File

@ -0,0 +1,13 @@
/* PR c/79413 */
void
foo ()
{
int a[1/0];
}
void
bar (void)
{
foo ();
}