aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans.c
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2009-09-16 16:12:18 +0000
committerMichael Matz <matz@gcc.gnu.org>2009-09-16 16:12:18 +0000
commit9b87db3c0fc95b7f76fcdc38e21371dff155ee4b (patch)
tree16bc7e6ccab2dd7b94d385eb0dc4572ffb988dc7 /gcc/fortran/trans.c
parent798763075fa686158fc9b40b2e6b3bc57320dd5a (diff)
downloadgcc-9b87db3c0fc95b7f76fcdc38e21371dff155ee4b.zip
gcc-9b87db3c0fc95b7f76fcdc38e21371dff155ee4b.tar.gz
gcc-9b87db3c0fc95b7f76fcdc38e21371dff155ee4b.tar.bz2
re PR fortran/41212 (miscompilation at -O2)
PR fortran/41212 * tree.h (struct tree_decl_common): Add decl_restricted_flag, shorten decl_common_unused. (DECL_RESTRICTED_P): New accessor. * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Use it to disambiguate marked decls and restrict pointers. fortran/ * trans.h (struct lang_type): Remove nontarget_type member. * trans.c (gfc_add_modify): Don't access it. * trans-decl.c (gfc_finish_var_decl): Don't allocate and set it, instead set DECL_RESTRICTED_P on affected decls. testsuite/ * gfortran.dg/pr41212.f90: New test. From-SVN: r151761
Diffstat (limited to 'gcc/fortran/trans.c')
-rw-r--r--gcc/fortran/trans.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c
index f4a215a..136987a 100644
--- a/gcc/fortran/trans.c
+++ b/gcc/fortran/trans.c
@@ -162,13 +162,6 @@ gfc_add_modify (stmtblock_t * pblock, tree lhs, tree rhs)
tree t1, t2;
t1 = TREE_TYPE (rhs);
t2 = TREE_TYPE (lhs);
- /* ??? This is actually backwards, we should test the "base" type
- from which the nontarget_type was copied, but we don't have this
- backlink. This will do for now, it's for checking anyway. */
- if (TYPE_LANG_SPECIFIC (t1))
- t1 = TYPE_LANG_SPECIFIC (t1)->nontarget_type;
- if (TYPE_LANG_SPECIFIC (t2))
- t2 = TYPE_LANG_SPECIFIC (t2)->nontarget_type;
/* Make sure that the types of the rhs and the lhs are the same
for scalar assignments. We should probably have something
similar for aggregates, but right now removing that check just