aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2010-10-06 15:29:46 +0000
committerMikael Morin <mikael@gcc.gnu.org>2010-10-06 15:29:46 +0000
commit40a33e3f4b6173b8e2491cdecc77e94d858ba547 (patch)
tree7aead7cc36dfbdb46fa84200b3bd702eb4d9e328 /gcc
parent1b02e40106a10a241a3753ffeeac2acfd21772fb (diff)
downloadgcc-40a33e3f4b6173b8e2491cdecc77e94d858ba547.zip
gcc-40a33e3f4b6173b8e2491cdecc77e94d858ba547.tar.gz
gcc-40a33e3f4b6173b8e2491cdecc77e94d858ba547.tar.bz2
array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org> * array.c (gfc_match_array_spec): Don't re-initialize cleared struct. * symbol.c (gen_shape_param): Ditto. From-SVN: r165039
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/array.c10
-rw-r--r--gcc/fortran/symbol.c9
3 files changed, 7 insertions, 17 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 80b013f..63a818c 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,10 @@
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+ * array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
+ * symbol.c (gen_shape_param): Ditto.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
* symbol.c (free_entry_list): New function.
(gfc_free_namespace): Free list of entries.
diff --git a/gcc/fortran/array.c b/gcc/fortran/array.c
index a26be78..8c74e70 100644
--- a/gcc/fortran/array.c
+++ b/gcc/fortran/array.c
@@ -437,16 +437,8 @@ gfc_match_array_spec (gfc_array_spec **asp, bool match_dim, bool match_codim)
array_type current_type;
gfc_array_spec *as;
int i;
-
- as = gfc_get_array_spec ();
- as->corank = 0;
- as->rank = 0;
- for (i = 0; i < GFC_MAX_DIMENSIONS; i++)
- {
- as->lower[i] = NULL;
- as->upper[i] = NULL;
- }
+ as = gfc_get_array_spec ();
if (!match_dim)
goto coarray;
diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c
index b900bc1..93199cf 100644
--- a/gcc/fortran/symbol.c
+++ b/gcc/fortran/symbol.c
@@ -3968,7 +3968,6 @@ gen_shape_param (gfc_formal_arglist **head,
gfc_symtree *param_symtree = NULL;
gfc_formal_arglist *formal_arg = NULL;
const char *shape_param = "gfc_shape_array__";
- int i;
if (shape_param_name != NULL)
shape_param = shape_param_name;
@@ -3994,15 +3993,9 @@ gen_shape_param (gfc_formal_arglist **head,
/* Initialize the kind to default integer. However, it will be overridden
during resolution to match the kind of the SHAPE parameter given as
the actual argument (to allow for any valid integer kind). */
- param_sym->ts.kind = gfc_default_integer_kind;
+ param_sym->ts.kind = gfc_default_integer_kind;
param_sym->as = gfc_get_array_spec ();
- /* Clear out the dimension info for the array. */
- for (i = 0; i < GFC_MAX_DIMENSIONS; i++)
- {
- param_sym->as->lower[i] = NULL;
- param_sym->as->upper[i] = NULL;
- }
param_sym->as->rank = 1;
param_sym->as->lower[0] = gfc_get_int_expr (gfc_default_integer_kind,
NULL, 1);