diff options
Diffstat (limited to 'gcc/fortran/symbol.c')
-rw-r--r-- | gcc/fortran/symbol.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c index af42e9b6146..3674b31cd32 100644 --- a/gcc/fortran/symbol.c +++ b/gcc/fortran/symbol.c @@ -3235,7 +3235,7 @@ gen_special_c_interop_ptr (int ptr_id, const char *ptr_name, current ns. */ generate_isocbinding_symbol (module_name, ptr_id == ISOCBINDING_NULL_PTR ? ISOCBINDING_PTR : ISOCBINDING_FUNPTR, - (char *) (ptr_id == ISOCBINDING_NULL_PTR + (const char *) (ptr_id == ISOCBINDING_NULL_PTR ? "_gfortran_iso_c_binding_c_ptr" : "_gfortran_iso_c_binding_c_funptr")); @@ -3356,10 +3356,10 @@ gen_cptr_param (gfc_formal_arglist **head, trying to use one of the iso_c_binding functions that need it. */ if (iso_c_sym_id == ISOCBINDING_F_PROCPOINTER) generate_isocbinding_symbol (module_name, ISOCBINDING_FUNPTR, - (char *)c_ptr_type); + (const char *)c_ptr_type); else generate_isocbinding_symbol (module_name, ISOCBINDING_PTR, - (char *)c_ptr_type); + (const char *)c_ptr_type); gfc_get_ha_symbol (c_ptr_type, &(c_ptr_sym)); } @@ -3579,9 +3579,9 @@ build_formal_args (gfc_symbol *new_proc_sym, void generate_isocbinding_symbol (const char *mod_name, iso_c_binding_symbol s, - char *local_name) + const char *local_name) { - char *name = (local_name && local_name[0]) ? local_name + const char *const name = (local_name && local_name[0]) ? local_name : c_interop_kinds_table[s].name; gfc_symtree *tmp_symtree = NULL; gfc_symbol *tmp_sym = NULL; @@ -3803,7 +3803,7 @@ generate_isocbinding_symbol (const char *mod_name, iso_c_binding_symbol s, generate_isocbinding_symbol (mod_name, s == ISOCBINDING_FUNLOC ? ISOCBINDING_FUNPTR : ISOCBINDING_PTR, - (char *)(s == ISOCBINDING_FUNLOC + (const char *)(s == ISOCBINDING_FUNLOC ? "_gfortran_iso_c_binding_c_funptr" : "_gfortran_iso_c_binding_c_ptr")); tmp_sym->ts.derived = |