aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorPiotr Trojanek <trojanek@adacore.com>2022-08-05 16:31:19 +0200
committerMarc Poulhiès <poulhies@adacore.com>2022-09-06 09:14:20 +0200
commit8b9bbdc362efe420633e43850092d01f467aa6d8 (patch)
tree1f66eea81dcb093b509dd15270d2da67373caaef /gcc/tree-vectorizer.h
parentd6b15134378bfba88effc523f4eb2c20a9486a63 (diff)
downloadgcc-8b9bbdc362efe420633e43850092d01f467aa6d8.zip
gcc-8b9bbdc362efe420633e43850092d01f467aa6d8.tar.gz
gcc-8b9bbdc362efe420633e43850092d01f467aa6d8.tar.bz2
[Ada] Improve detection of illegal Iterable aspects
Handling of aspect Iterable was lacking guards against illegal code, so the compiler either crashed or emitted cryptic errors while expanding loops that rely on this aspect. gcc/ada/ * doc/gnat_rm/implementation_defined_aspects.rst (Aspect Iterable): Include Last and Previous primitives in syntactic and semantic description. * exp_attr.adb (Expand_N_Attribute_Reference): Don't expect attributes like Iterable that can only appear in attribute definition clauses. * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Prevent crash on non-aggregate Iterable attribute; improve basic diagnosis of attribute values. (Resolve_Iterable_Operation): Improve checks for illegal primitives in aspect Iterable, e.g. with wrong number of formal parameters. (Validate_Iterable_Aspect): Prevent crashes on syntactically illegal aspect expression. * sem_util.adb (Get_Cursor_Type): Fix style. * gnat_ugn.texi, gnat_rm.texi: Regenerate.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions