diff options
author | Ed Schonberg <schonberg@adacore.com> | 2018-05-25 09:03:04 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2018-05-25 09:03:04 +0000 |
commit | 8218cfde96a4e9df2ce00fabc3d616d6f3cfc83c (patch) | |
tree | 6a7069f514a341e95de7b5860bd3f0b53386e4a5 /gcc/tree-vect-data-refs.c | |
parent | 56ce7e4aa9cfbeb2df1a02a4ae899faaeedb2ab4 (diff) | |
download | gcc-8218cfde96a4e9df2ce00fabc3d616d6f3cfc83c.zip gcc-8218cfde96a4e9df2ce00fabc3d616d6f3cfc83c.tar.gz gcc-8218cfde96a4e9df2ce00fabc3d616d6f3cfc83c.tar.bz2 |
[Ada] Compiler loop on expression function and predicate in generic unit
This patch fixes an infinite loop in the compiler when analyzing an
expression function whose expression mentions a subtype with a static
predicate, and the context is a generic unit.
2018-05-25 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
* sem_ch13.adb (Build_Predicate_Functions): The predicate function
declaration is inserted into the tree and analyzed at that point, so
should not be reinserted when the body is constructed. Inside a
generic, ensure that the body is not inserted twice in the tree.
gcc/testsuite/
* gnat.dg/static_pred1.adb, gnat.dg/static_pred1.ads: New testcase.
From-SVN: r260716
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
0 files changed, 0 insertions, 0 deletions