------- Comment #5 from pault at gcc dot gnu dot org  2010-01-18 19:55 -------
Index: gcc/fortran/trans-decl.c
===================================================================
*** gcc/fortran/trans-decl.c    (revision 155875)
--- gcc/fortran/trans-decl.c    (working copy)
*************** gfc_generate_function_code (gfc_namespac
*** 4256,4262 ****
    stmtblock_t block;
    stmtblock_t body;
    tree result;
!   tree recurcheckvar = NULL;
    gfc_symbol *sym;
    int rank;
    bool is_recursive;
--- 4257,4263 ----
    stmtblock_t block;
    stmtblock_t body;
    tree result;
!   tree recurcheckvar = NULL_TREE;
    gfc_symbol *sym;
    int rank;
    bool is_recursive;
*************** gfc_generate_function_code (gfc_namespac
*** 4446,4456 ****
        gfc_add_expr_to_block (&block, tmp);
        /* Reset recursion-check variable.  */
        if ((gfc_option.rtcheck & GFC_RTCHECK_RECURSION) && !is_recursive
!         && !gfc_option.flag_openmp)
!       {
!       gfc_add_modify (&block, recurcheckvar, boolean_false_node);
!       recurcheckvar = NULL;
!       }
      }


--- 4447,4457 ----
        gfc_add_expr_to_block (&block, tmp);
        /* Reset recursion-check variable.  */
        if ((gfc_option.rtcheck & GFC_RTCHECK_RECURSION) && !is_recursive
!         && !gfc_option.flag_openmp && recurcheckvar != NULL_TREE)
!       {
!         gfc_add_modify (&block, recurcheckvar, boolean_false_node);
!         recurcheckvar = NULL_TREE;
!       }
      }

Gets rid of the trivial problem reported by Richard.

Cheers

Paul


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42772

Reply via email to