diff options
author | Tobias Burnus <burnus@net-b.de> | 2014-08-15 18:33:08 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2014-08-15 18:33:08 +0200 |
commit | 9de8e7afa4cc23b93bbc91329d9864c0883e8640 (patch) | |
tree | bf626635cc5610c8ce13b141261421defaefeb8a /gcc | |
parent | 86d2cad9064326411c933cd67313e602f0828419 (diff) | |
download | gcc-9de8e7afa4cc23b93bbc91329d9864c0883e8640.zip gcc-9de8e7afa4cc23b93bbc91329d9864c0883e8640.tar.gz gcc-9de8e7afa4cc23b93bbc91329d9864c0883e8640.tar.bz2 |
resolve.c (resolve_critical): Fix name mangling.
2014-08-15 Tobias Burnus <burnus@net-b.de>
* resolve.c (resolve_critical): Fix name mangling.
* trans-stmt.c (gfc_trans_critical): Fix lock call.
From-SVN: r214029
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/resolve.c | 9 | ||||
-rw-r--r-- | gcc/fortran/trans-stmt.c | 2 |
3 files changed, 11 insertions, 5 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 2663b0a..fcf591c 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2014-08-15 Tobias Burnus <burnus@net-b.de> + + * resolve.c (resolve_critical): Fix name mangling. + * trans-stmt.c (gfc_trans_critical): Fix lock call. + 2014-08-15 Manuel López-Ibáñez <manu@gcc.gnu.org> PR fortran/44054 diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index b6ce022..ea28ef4 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 abd80e7..f3dec75 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); } |