aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/fortran/ChangeLog7
-rw-r--r--gcc/fortran/trans-decl.c13
2 files changed, 7 insertions, 13 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index fcf194a..ebd8a4c 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,10 @@
+2009-07-21 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/40726
+ * trans-decl.c (gfc_get_extern_function_decl): Do not set
+ DECL_IS_MALLOC for pointer valued functions.
+ (build_function_decl): The same.
+
2009-07-19 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/40727
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 5133888..fa25782 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -1423,12 +1423,6 @@ gfc_get_extern_function_decl (gfc_symbol * sym)
FUNCTION_DECL, name, type);
SET_DECL_ASSEMBLER_NAME (fndecl, mangled_name);
- /* If the return type is a pointer, avoid alias issues by setting
- DECL_IS_MALLOC to nonzero. This means that the function should be
- treated as if it were a malloc, meaning it returns a pointer that
- is not an alias. */
- if (POINTER_TYPE_P (type))
- DECL_IS_MALLOC (fndecl) = 1;
/* Set the context of this decl. */
if (0 && sym->ns && sym->ns->proc_name)
@@ -1559,13 +1553,6 @@ build_function_decl (gfc_symbol * sym)
/* Don't call layout_decl for a RESULT_DECL.
layout_decl (result_decl, 0); */
- /* If the return type is a pointer, avoid alias issues by setting
- DECL_IS_MALLOC to nonzero. This means that the function should be
- treated as if it were a malloc, meaning it returns a pointer that
- is not an alias. */
- if (POINTER_TYPE_P (type))
- DECL_IS_MALLOC (fndecl) = 1;
-
/* Set up all attributes for the function. */
DECL_CONTEXT (fndecl) = current_function_decl;
DECL_EXTERNAL (fndecl) = 0;