symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
authorTobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
Sat, 12 Feb 2005 15:44:01 +0000 (16:44 +0100)
committerTobias Schlüter <tobi@gcc.gnu.org>
Sat, 12 Feb 2005 15:44:01 +0000 (16:44 +0100)
* symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
(gfc_use_derived): ... this function.

From-SVN: r94942

gcc/fortran/ChangeLog
gcc/fortran/symbol.c

index 6db9cd9f57d93ac88ee6df85fabecaff7a14c5df..321434aedf057afe33f2fa5c568b54af09dad57f 100644 (file)
@@ -1,3 +1,8 @@
+2005-02-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
+       (gfc_use_derived): ... this function.
+
 2005-02-09  Richard Henderson  <rth@redhat.com>
 
        * f95-lang.c (gfc_init_builtin_functions): Call
index b8b6d5e135bd78c25cd1562004b3a2a5bdd60ca5..c9205d58459b08b3aa8fd42b6c3600727a9b9154 100644 (file)
@@ -1201,14 +1201,17 @@ switch_types (gfc_symtree * st, gfc_symbol * from, gfc_symbol * to)
    pointer to the translated node or NULL for an error.  Usually there
    is no translation and we return the node we were passed.  */
 
-static gfc_symtree *
-gfc_use_ha_derived (gfc_symbol * sym)
+gfc_symbol *
+gfc_use_derived (gfc_symbol * sym)
 {
   gfc_symbol *s, *p;
   gfc_typespec *t;
   gfc_symtree *st;
   int i;
 
+  if (sym->components != NULL)
+    return sym;               /* Already defined.  */
+
   if (sym->ns->parent == NULL)
     goto bad;
 
@@ -1251,7 +1254,7 @@ gfc_use_ha_derived (gfc_symbol * sym)
      namelists, common lists and interface lists.  */
   gfc_free_symbol (sym);
 
-  return st;
+  return s;
 
 bad:
   gfc_error ("Derived type '%s' at %C is being used before it is defined",
@@ -1260,22 +1263,6 @@ bad:
 }
 
 
-gfc_symbol *
-gfc_use_derived (gfc_symbol * sym)
-{
-  gfc_symtree *st;
-
-  if (sym->components != NULL)
-    return sym;                        /* Already defined */
-
-  st = gfc_use_ha_derived (sym);
-  if (st)
-    return st->n.sym;
-  else
-    return NULL;
-}
-
-
 /* Given a derived type node and a component name, try to locate the
    component structure.  Returns the NULL pointer if the component is
    not found or the components are private.  */