aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/gcc-interface/decl.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2018-09-26 09:17:10 +0000
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>2018-09-26 09:17:10 +0000
commit4453a8221c65f386ae361670fa932643521374d7 (patch)
treec850eabac3831d3e202d4306c31e234753c2d2d4 /gcc/ada/gcc-interface/decl.c
parent81d85d4baeb6ada71652a556cec1663511c3933c (diff)
downloadgcc-4453a8221c65f386ae361670fa932643521374d7.zip
gcc-4453a8221c65f386ae361670fa932643521374d7.tar.gz
gcc-4453a8221c65f386ae361670fa932643521374d7.tar.bz2
[Ada] ICE on array of task type with -gnatct
2018-09-26 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Task_Type>: In -gnatct mode, process the discriminants only for a definition. From-SVN: r264610
Diffstat (limited to 'gcc/ada/gcc-interface/decl.c')
-rw-r--r--gcc/ada/gcc-interface/decl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c
index c15b0c8..8dd62f7 100644
--- a/gcc/ada/gcc-interface/decl.c
+++ b/gcc/ada/gcc-interface/decl.c
@@ -4158,7 +4158,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition)
part of the associated body so they need to be translated. */
if (type_annotate_only && gnat_equiv_type == gnat_entity)
{
- if (Has_Discriminants (gnat_entity)
+ if (definition
+ && Has_Discriminants (gnat_entity)
&& Root_Type (gnat_entity) == gnat_entity)
{
tree gnu_field_list = NULL_TREE;