Commit e429bb49 by Jakub Jelinek

trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P on VAR_DECL…

trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P on VAR_DECL LBOUND and/or UBOUND, even for -O1.

	* trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P
	on VAR_DECL LBOUND and/or UBOUND, even for -O1.

From-SVN: r158366
parent f36ae44d
2010-04-15 Jakub Jelinek <jakub@redhat.com>
* trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P
on VAR_DECL LBOUND and/or UBOUND, even for -O1.
2010-04-14 Steven G. Kargl <kargl@gcc.gnu.org> 2010-04-14 Steven G. Kargl <kargl@gcc.gnu.org>
* fortran/intrinsic.texi: Add the missing specific name of intrinsic * intrinsic.texi: Add the missing specific name of intrinsic
procedure where the specific name is identical to the generic name. procedure where the specific name is identical to the generic name.
Fix inconsistent or mismatch in the argument names in intrinsic Fix inconsistent or mismatch in the argument names in intrinsic
procedure descriptions. Add the SCALAR allocatable description to procedure descriptions. Add the SCALAR allocatable description to
......
...@@ -775,16 +775,15 @@ gfc_build_qualified_array (tree decl, gfc_symbol * sym) ...@@ -775,16 +775,15 @@ gfc_build_qualified_array (tree decl, gfc_symbol * sym)
GFC_TYPE_ARRAY_LBOUND (type, dim), GFC_TYPE_ARRAY_LBOUND (type, dim),
GFC_TYPE_ARRAY_UBOUND (type, dim)); GFC_TYPE_ARRAY_UBOUND (type, dim));
gtype = build_array_type (gtype, rtype); gtype = build_array_type (gtype, rtype);
/* Ensure the bound variables aren't optimized out at -O0. */ /* Ensure the bound variables aren't optimized out at -O0.
if (!optimize) For -O1 and above they often will be optimized out, but
{ can be tracked by VTA. */
if (GFC_TYPE_ARRAY_LBOUND (type, dim) if (GFC_TYPE_ARRAY_LBOUND (type, dim)
&& TREE_CODE (GFC_TYPE_ARRAY_LBOUND (type, dim)) == VAR_DECL) && TREE_CODE (GFC_TYPE_ARRAY_LBOUND (type, dim)) == VAR_DECL)
DECL_IGNORED_P (GFC_TYPE_ARRAY_LBOUND (type, dim)) = 0; DECL_IGNORED_P (GFC_TYPE_ARRAY_LBOUND (type, dim)) = 0;
if (GFC_TYPE_ARRAY_UBOUND (type, dim) if (GFC_TYPE_ARRAY_UBOUND (type, dim)
&& TREE_CODE (GFC_TYPE_ARRAY_UBOUND (type, dim)) == VAR_DECL) && TREE_CODE (GFC_TYPE_ARRAY_UBOUND (type, dim)) == VAR_DECL)
DECL_IGNORED_P (GFC_TYPE_ARRAY_UBOUND (type, dim)) = 0; DECL_IGNORED_P (GFC_TYPE_ARRAY_UBOUND (type, dim)) = 0;
}
} }
TYPE_NAME (type) = type_decl = build_decl (input_location, TYPE_NAME (type) = type_decl = build_decl (input_location,
TYPE_DECL, NULL, gtype); TYPE_DECL, NULL, gtype);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment