From 03b6a78251eda8afb4474eda2d911497b6ec7ec7 Mon Sep 17 00:00:00 2001 From: Yiran Wang Date: Mon, 10 Aug 2015 15:43:11 -0700 Subject: fix a bug in 6278c3db6b4eb6f38ccd27c1227452ad9915db28 After call to pointer_map_insert, the caller need to write the value. This fixes the following regression, gfortran.dg/array_constructor_6.f90 gfortran.dg/subref_array_pointer_2.f90 Change-Id: Ic7aec96c24d17c527291aefe30e726989ecd9a8f --- gcc-4.9/gcc/tree-inline.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'gcc-4.9/gcc/tree-inline.c') diff --git a/gcc-4.9/gcc/tree-inline.c b/gcc-4.9/gcc/tree-inline.c index 49f897c39..aa5d0f1cb 100644 --- a/gcc-4.9/gcc/tree-inline.c +++ b/gcc-4.9/gcc/tree-inline.c @@ -800,8 +800,12 @@ remap_dependence_clique (copy_body_data *id, unsigned short clique) void **newc = pointer_map_contains (id->dependence_map, (void *)(uintptr_t)clique); if (!newc) - newc = pointer_map_insert (id->dependence_map, - (void *)(uintptr_t)++cfun->last_clique); + { + newc = pointer_map_insert (id->dependence_map, + (void *)(uintptr_t)clique); + *newc = (void *)(uintptr_t)++cfun->last_clique; + } + return (uintptr_t)*newc; } -- cgit v1.2.3