aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJanus Weil <janus@gcc.gnu.org>2009-04-07 18:24:31 +0200
committerJanus Weil <janus@gcc.gnu.org>2009-04-07 18:24:31 +0200
commit13d138bfb15b542cb490f5685ba6e109d356dfe4 (patch)
tree85d964d67e85516b0de789119ce6e78614d494b1 /gcc
parent1732c156412b8af08b0b24a615c99176a8ec3237 (diff)
downloadgcc-13d138bfb15b542cb490f5685ba6e109d356dfe4.zip
gcc-13d138bfb15b542cb490f5685ba6e109d356dfe4.tar.gz
gcc-13d138bfb15b542cb490f5685ba6e109d356dfe4.tar.bz2
re PR fortran/38152 (procedure pointers as module variables)
2009-04-07 Janus Weil <janus@gcc.gnu.org> PR fortran/38152 * trans-decl.c (gfc_get_symbol_decl): Correctly set decl location for procedure pointer decls. 2009-04-07 Janus Weil <janus@gcc.gnu.org> PR fortran/38152 * gfortran.dg/proc_ptr_13.f90: Add "-g" option. From-SVN: r145692
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/trans-decl.c4
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_13.f901
4 files changed, 15 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 3677313..f9e8ce4 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,11 @@
2009-04-07 Janus Weil <janus@gcc.gnu.org>
+ PR fortran/38152
+ * trans-decl.c (gfc_get_symbol_decl): Correctly set decl location for
+ procedure pointer decls.
+
+2009-04-07 Janus Weil <janus@gcc.gnu.org>
+
PR fortran/38290
* expr.c (gfc_check_pointer_assign): Enable interface check for
procedure pointers.
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index ac768b3..6ced5bc 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -1015,10 +1015,12 @@ gfc_get_symbol_decl (gfc_symbol * sym)
if (sym->backend_decl)
return sym->backend_decl;
- /* Catch function declarations. Only used for actual parameters. */
+ /* Catch function declarations. Only used for actual parameters and
+ procedure pointers. */
if (sym->attr.flavor == FL_PROCEDURE)
{
decl = gfc_get_extern_function_decl (sym);
+ gfc_set_decl_location (decl, &sym->declared_at);
return decl;
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a810aae..688d1b5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2009-04-07 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/38152
+ * gfortran.dg/proc_ptr_13.f90: Add "-g" option.
+
2009-04-07 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/subp_elim_errors.ad[sb]: New test.
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_13.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_13.f90
index a0e69af..5c66c54 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_13.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_13.f90
@@ -1,4 +1,5 @@
! { dg-do compile }
+! { dg-options "-g" }
!
! PR 38152: Procedure pointers as module variables.
!