From 9de8e7afa4cc23b93bbc91329d9864c0883e8640 Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Fri, 15 Aug 2014 18:33:08 +0200 Subject: [PATCH] resolve.c (resolve_critical): Fix name mangling. 2014-08-15 Tobias Burnus * resolve.c (resolve_critical): Fix name mangling. * trans-stmt.c (gfc_trans_critical): Fix lock call. From-SVN: r214029 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/resolve.c | 9 +++++---- gcc/fortran/trans-stmt.c | 2 +- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 2663b0a29ef..fcf591c940f 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2014-08-15 Tobias Burnus + + * resolve.c (resolve_critical): Fix name mangling. + * trans-stmt.c (gfc_trans_critical): Fix lock call. + 2014-08-15 Manuel López-Ibáñez PR fortran/44054 diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index b6ce022165c..ea28ef4ad92 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -8485,13 +8485,14 @@ resolve_critical (gfc_code *code) if (gfc_option.coarray != GFC_FCOARRAY_LIB) return; - symtree = gfc_find_symtree (gfc_current_ns->sym_root, "__lock_type@0"); + symtree = gfc_find_symtree (gfc_current_ns->sym_root, + GFC_PREFIX ("lock_type")); if (symtree) lock_type = symtree->n.sym; else { - if (gfc_get_sym_tree ("__lock_type@0", gfc_current_ns, &symtree, - false) != 0) + if (gfc_get_sym_tree (GFC_PREFIX ("lock_type"), gfc_current_ns, &symtree, + false) != 0) gcc_unreachable (); lock_type = symtree->n.sym; lock_type->attr.flavor = FL_DERIVED; @@ -8500,7 +8501,7 @@ resolve_critical (gfc_code *code) lock_type->intmod_sym_id = ISOFORTRAN_LOCK_TYPE; } - sprintf(name, "__lock_var@%d",serial++); + sprintf(name, GFC_PREFIX ("lock_var") "%d",serial++); if (gfc_get_sym_tree (name, gfc_current_ns, &symtree, false) != 0) gcc_unreachable (); diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c index abd80e768a7..f3dec7595fa 100644 --- a/gcc/fortran/trans-stmt.c +++ b/gcc/fortran/trans-stmt.c @@ -1121,7 +1121,7 @@ gfc_trans_critical (gfc_code *code) token = GFC_TYPE_ARRAY_CAF_TOKEN (TREE_TYPE (token)); tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_lock, 7, token, integer_zero_node, integer_one_node, - boolean_true_node, null_pointer_node, + null_pointer_node, null_pointer_node, null_pointer_node, integer_zero_node); gfc_add_expr_to_block (&block, tmp); } -- 2.30.2