From 3671c99673af214992ef23e4fd9a28ab2417f33a Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Tue, 26 Jan 2016 20:57:37 +0000 Subject: [PATCH] re PR rtl-optimization/69217 (ICE at var-tracking.c:5038 Segmentation fault) PR rtl-optimization/69217 * var-tracking.c (tracked_record_parameter_p): Don't segfault if there are no TYPE_FIELDS set for the record type. From-SVN: r232845 --- gcc/ChangeLog | 6 ++++++ gcc/var-tracking.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dd774bef2bd9..e94010a9cc56 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-01-26 Iain Buclaw + + PR rtl-optimization/69217 + * var-tracking.c (tracked_record_parameter_p): Don't segfault if there + are no TYPE_FIELDS set for the record type. + 2016-01-26 Jakub Jelinek PR target/68662 diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c index d044b7f989dd..9f09d30b1f91 100644 --- a/gcc/var-tracking.c +++ b/gcc/var-tracking.c @@ -5128,7 +5128,8 @@ tracked_record_parameter_p (tree t) if (TREE_CODE (type) != RECORD_TYPE) return false; - if (DECL_CHAIN (TYPE_FIELDS (type)) == NULL_TREE) + if (TYPE_FIELDS (type) == NULL_TREE + || DECL_CHAIN (TYPE_FIELDS (type)) == NULL_TREE) return false; return true; -- 2.47.2