]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
class.c (gfc_find_intrinsic_vtab): Removed unused var.
authorTobias Burnus <burnus@net-b.de>
Mon, 15 Apr 2013 09:40:28 +0000 (11:40 +0200)
committerTobias Burnus <burnus@gcc.gnu.org>
Mon, 15 Apr 2013 09:40:28 +0000 (11:40 +0200)
2013-04-15  Tobias Burnus  <burnus@net-b.de>

        * class.c (gfc_find_intrinsic_vtab): Removed unused var.
        * dependency.c (check_data_pointer_types): Fix check.
        * frontend-passes.c (check_data_pointer_types): Remove
        superfluous statement.
        * parse.c (decode_omp_directive): Add missing break.
        * resolve.c (resolve_typebound_subroutine: Free variable.
        * trans-decl.c (create_function_arglist): Correct condition.

From-SVN: r197961

gcc/fortran/ChangeLog
gcc/fortran/class.c
gcc/fortran/dependency.c
gcc/fortran/frontend-passes.c
gcc/fortran/parse.c
gcc/fortran/resolve.c
gcc/fortran/trans-decl.c

index 2b1f82a831dffa1be345382cbd9c4a6fb5a0044c..262f2571d84afb50ef4cc1e795318703b52ce96b 100644 (file)
@@ -1,3 +1,13 @@
+2013-04-15  Tobias Burnus  <burnus@net-b.de>
+
+       * class.c (gfc_find_intrinsic_vtab): Removed unused var.
+       * dependency.c (check_data_pointer_types): Fix check.
+       * frontend-passes.c (check_data_pointer_types): Remove
+       superfluous statement.
+       * parse.c (decode_omp_directive): Add missing break.
+       * resolve.c (resolve_typebound_subroutine: Free variable.
+       * trans-decl.c (create_function_arglist): Correct condition.
+
 2013-04-14  Mikael Morin  <mikael@gcc.gnu.org>
 
        PR fortran/56816
index f3fe1781e6d645edb7db5457388c614e8a133b59..349f494f62a42fd3d2716c45a62c44c20d45878b 100644 (file)
@@ -2480,7 +2480,7 @@ gfc_symbol *
 gfc_find_intrinsic_vtab (gfc_typespec *ts)
 {
   gfc_namespace *ns;
-  gfc_symbol *vtab = NULL, *vtype = NULL, *found_sym = NULL, *def_init = NULL;
+  gfc_symbol *vtab = NULL, *vtype = NULL, *found_sym = NULL;
   gfc_symbol *copy = NULL, *src = NULL, *dst = NULL;
   int charlen = 0;
 
@@ -2689,8 +2689,6 @@ cleanup:
       gfc_commit_symbol (vtab);
       if (vtype)
        gfc_commit_symbol (vtype);
-      if (def_init)
-       gfc_commit_symbol (def_init);
       if (copy)
        gfc_commit_symbol (copy);
       if (src)
index 6f8e6dfbdc0dc5c3c7fd0bd19d1e46d2c75ac0b4..38921b1993f5923886b68fd66bf6d679ac6d52da 100644 (file)
@@ -1200,7 +1200,7 @@ check_data_pointer_types (gfc_expr *expr1, gfc_expr *expr2)
   bool seen_component_ref;
 
   if (expr1->expr_type != EXPR_VARIABLE
-       || expr1->expr_type != EXPR_VARIABLE)
+       || expr2->expr_type != EXPR_VARIABLE)
     return false;
 
   sym1 = expr1->symtree->n.sym;
index 974931416f9553df3287c8a54614e5f8d307c924..3946c0c3461c1126fced1b216bad3b77d9016374 100644 (file)
@@ -1045,8 +1045,6 @@ combine_array_constructor (gfc_expr *e)
   newbase = NULL;
   e->expr_type = EXPR_ARRAY;
 
-  c = gfc_constructor_first (oldbase);
-
   for (c = gfc_constructor_first (oldbase); c;
        c = gfc_constructor_next (c))
     {
index 74a5b4b6c404ba91e42ab04e972c9a6eefc08483..83011138ea5902342631cc322c0bf84148e06884 100644 (file)
@@ -621,6 +621,7 @@ decode_omp_directive (void)
       match ("taskyield", gfc_match_omp_taskyield, ST_OMP_TASKYIELD);
       match ("threadprivate", gfc_match_omp_threadprivate,
             ST_OMP_THREADPRIVATE);
+      break;
     case 'w':
       match ("workshare", gfc_match_omp_workshare, ST_OMP_WORKSHARE);
       break;
index 30cfcd090588228f40503889f86ab341f030bb48..684d2058b2d5ea2d2542a46a4c5b1190ab9f6696 100644 (file)
@@ -5820,6 +5820,8 @@ resolve_typebound_subroutine (gfc_code *code)
        correct typespec.  */
       code->expr1->ts = ts;
     }
+  else if (new_ref)
+    gfc_free_ref_list (new_ref);
 
   return true;
 }
index f2cf2de4cd3920fa29c8df20bc29ab62fc223ddf..4c0b1da5af1441706e01d7e83cbde830260fef37 100644 (file)
@@ -2146,7 +2146,7 @@ create_function_arglist (gfc_symbol * sym)
         hence, the optional status cannot be transfered via a NULL pointer.
         Thus, we will use a hidden argument in that case.  */
       else if (f->sym->attr.optional && f->sym->attr.value
-              && !f->sym->attr.dimension && !f->sym->ts.type != BT_CLASS
+              && !f->sym->attr.dimension && f->sym->ts.type != BT_CLASS
               && f->sym->ts.type != BT_DERIVED)
        {
           tree tmp;