OSDN Git Service

* symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
authortobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 12 Feb 2005 15:44:01 +0000 (15:44 +0000)
committertobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 12 Feb 2005 15:44:01 +0000 (15:44 +0000)
(gfc_use_derived): ... this function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94942 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 6db9cd9..321434a 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 b8b6d5e..c9205d5 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.  */