]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
decl.c (match_prefix): Make seen_type a boolean.
authorBernhard Fischer <aldot@gcc.gnu.org>
Tue, 11 Dec 2007 08:36:13 +0000 (09:36 +0100)
committerBernhard Reutner-Fischer <aldot@gcc.gnu.org>
Tue, 11 Dec 2007 08:36:13 +0000 (09:36 +0100)
2007-12-11  Bernhard Fischer  <aldot@gcc.gnu.org>

* decl.c (match_prefix): Make seen_type a boolean.
(add_global_entry): Cache type distinction.
* trans-decl.c: Whitespace cleanup.

From-SVN: r130772

gcc/fortran/ChangeLog
gcc/fortran/decl.c
gcc/fortran/trans-decl.c

index cd9b218ef801737eaacaf1ef74305c4b57848b15..280cc467bdd7be2ee2dd9e6ae50ca9516516366f 100644 (file)
@@ -1,3 +1,9 @@
+2007-12-11  Bernhard Fischer  <aldot@gcc.gnu.org>
+
+       * decl.c (match_prefix): Make seen_type a boolean.
+       (add_global_entry): Cache type distinction.
+       * trans-decl.c: Whitespace cleanup.
+
 2007-12-10  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/34425
index 584bb19b4a4677be32ecb3a46bb59936fb78feeb..0df18582ccd9afeb3281845f32bfe83bd09ca451 100644 (file)
@@ -3653,7 +3653,7 @@ cleanup:
 static match
 match_prefix (gfc_typespec *ts)
 {
-  int seen_type;
+  bool seen_type;
 
   gfc_clear_attr (&current_attr);
   seen_type = 0;
@@ -4334,16 +4334,18 @@ static bool
 add_global_entry (const char *name, int sub)
 {
   gfc_gsymbol *s;
+  int type;
 
   s = gfc_get_gsymbol(name);
+  type = sub ? GSYM_SUBROUTINE : GSYM_FUNCTION;
 
   if (s->defined
       || (s->type != GSYM_UNKNOWN
-         && s->type != (sub ? GSYM_SUBROUTINE : GSYM_FUNCTION)))
+         && s->type != type))
     gfc_global_used(s, NULL);
   else
     {
-      s->type = sub ? GSYM_SUBROUTINE : GSYM_FUNCTION;
+      s->type = type;
       s->where = gfc_current_locus;
       s->defined = 1;
       return true;
index e48de1f8867bf0aba5f8143a959fd802b4ffe102..96beed224e668387a24c0e979755488b3bc13668 100644 (file)
@@ -2053,7 +2053,7 @@ gfc_build_intrinsic_function_decls (void)
                                      gfc_charlen_type_node, pchar_type_node,
                                      gfc_logical4_type_node);
 
-  gfor_fndecl_string_trim = 
+  gfor_fndecl_string_trim =
     gfc_build_library_function_decl (get_identifier (PREFIX("string_trim")),
                                      void_type_node,
                                      4,
@@ -2114,7 +2114,7 @@ gfc_build_intrinsic_function_decls (void)
                                      pvoid_type_node);
 
   gfor_fndecl_sr_kind =
-    gfc_build_library_function_decl (get_identifier 
+    gfc_build_library_function_decl (get_identifier
                                        (PREFIX("selected_real_kind")),
                                      gfc_int4_type_node,
                                      2, pvoid_type_node,
@@ -3049,7 +3049,7 @@ gfc_trans_entry_master_switch (gfc_entry_list * el)
       val = build_int_cst (gfc_array_index_type, el->id);
       tmp = build3_v (CASE_LABEL_EXPR, val, NULL_TREE, label);
       gfc_add_expr_to_block (&block, tmp);
-      
+
       /* And jump to the actual entry point.  */
       label = gfc_build_label_decl (NULL_TREE);
       tmp = build1_v (GOTO_EXPR, label);
@@ -3131,7 +3131,7 @@ gfc_generate_function_code (gfc_namespace * ns)
   gfc_generate_contained_functions (ns);
 
   generate_local_vars (ns);
-  
+
   /* Keep the parent fake result declaration in module functions
      or external procedures.  */
   if ((ns->parent && ns->parent->proc_name->attr.flavor == FL_MODULE)