diff options
-rw-r--r-- | gcc/c-family/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/c-family/c-attribs.c | 4 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 69ea1fd..fe6cfe7 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,11 @@ +2020-05-05 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * c-attribs.c (handle_vector_size_attribute): Add attribute + nonnull for argument args in order to silence warning of + uninitialized variable usage. Since this is local to the + compilation unit and thus cannot be checked at call sides by the + compiler, added an assert statement in order to verify this. + 2020-05-01 H.J. Lu <hongjiu.lu@intel.com> PR target/93492 diff --git a/gcc/c-family/c-attribs.c b/gcc/c-family/c-attribs.c index a101312..7a6fb9a 100644 --- a/gcc/c-family/c-attribs.c +++ b/gcc/c-family/c-attribs.c @@ -117,7 +117,7 @@ static tree handle_tm_attribute (tree *, tree, tree, int, bool *); static tree handle_tm_wrap_attribute (tree *, tree, tree, int, bool *); static tree handle_novops_attribute (tree *, tree, tree, int, bool *); static tree handle_vector_size_attribute (tree *, tree, tree, int, - bool *); + bool *) ATTRIBUTE_NONNULL(3); static tree handle_nonnull_attribute (tree *, tree, tree, int, bool *); static tree handle_nonstring_attribute (tree *, tree, tree, int, bool *); static tree handle_nothrow_attribute (tree *, tree, tree, int, bool *); @@ -3697,6 +3697,8 @@ handle_vector_size_attribute (tree *node, tree name, tree args, if (!type) return NULL_TREE; + gcc_checking_assert (args != NULL); + tree new_type = build_vector_type (type, nunits); /* Build back pointers if needed. */ |