aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTobias Burnus <burnus@gcc.gnu.org>2013-05-28 17:18:14 +0200
committerTobias Burnus <burnus@gcc.gnu.org>2013-05-28 17:18:14 +0200
commit4fdf9c1ec0cc0be111e5d22d4da1cfa36a384c42 (patch)
treedd8951f384faeda05ec9aecc179b94cb28d5ea66 /gcc
parent0ba045df8f42f2af5e15a0f28f1beeaa18acaa44 (diff)
downloadgcc-4fdf9c1ec0cc0be111e5d22d4da1cfa36a384c42.zip
gcc-4fdf9c1ec0cc0be111e5d22d4da1cfa36a384c42.tar.gz
gcc-4fdf9c1ec0cc0be111e5d22d4da1cfa36a384c42.tar.bz2
[multiple changes]
2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/57435 * module.c (check_for_ambiguous): Avoid null pointer deref. 2013-05-28 Tobias Burnus <burnus@net-b.de> PR fortran/57435 From-SVN: r199382
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/module.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/use_29.f9015
4 files changed, 26 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 4ebdf3c..a8116b0 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/57435
+ * module.c (check_for_ambiguous): Avoid null pointer deref.
+
2013-05-28 Janus Weil <janus@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c
index e6a4cd7..bc31671 100644
--- a/gcc/fortran/module.c
+++ b/gcc/fortran/module.c
@@ -4532,7 +4532,7 @@ check_for_ambiguous (gfc_symbol *st_sym, pointer_info *info)
module_locus locus;
symbol_attribute attr;
- if (st_sym->name == gfc_current_ns->proc_name->name)
+ if (gfc_current_ns->proc_name && st_sym->name == gfc_current_ns->proc_name->name)
{
gfc_error ("'%s' of module '%s', imported at %C, is also the name of the "
"current program unit", st_sym->name, module_name);
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index be8eb9e..d89b5be 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2013-05-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/57435
+ * testsuite/gfortran.dg/use_29.f90: New.
+
2013-05-28 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/fp_exception.adb: New test.
diff --git a/gcc/testsuite/gfortran.dg/use_29.f90 b/gcc/testsuite/gfortran.dg/use_29.f90
new file mode 100644
index 0000000..89dfe50
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/use_29.f90
@@ -0,0 +1,15 @@
+! { dg-do compile }
+!
+! PR fortran/57435
+!
+! Contributed by Lorenz Hüdepohl
+!
+module precision
+end module precision
+ contains
+ use precision ! { dg-error "Unexpected USE statement in CONTAINS section" }
+module stressten_rt ! { dg-error "Unexpected MODULE statement in CONTAINS section" }
+ use precision ! { dg-error "Unexpected USE statement in CONTAINS section" }
+ implicit none ! { dg-error "Unexpected IMPLICIT NONE statement in CONTAINS section" }
+
+! { dg-error "Unexpected end of file" "" { target "*-*-*" } 0 }