diff options
author | Cesar Philippidis <cesar@codesourcery.com> | 2017-06-29 12:03:43 -0700 |
---|---|---|
committer | Cesar Philippidis <cesar@gcc.gnu.org> | 2017-06-29 12:03:43 -0700 |
commit | 74582a3e2e01068437410fb75f2f9282ee4923e3 (patch) | |
tree | ff42cdef52ef1d60ee4f502bc798e030fc351df5 /gcc/fortran/openmp.c | |
parent | 6da4066f343f133670c07cbb199527f549fd261f (diff) | |
download | gcc-74582a3e2e01068437410fb75f2f9282ee4923e3.zip gcc-74582a3e2e01068437410fb75f2f9282ee4923e3.tar.gz gcc-74582a3e2e01068437410fb75f2f9282ee4923e3.tar.bz2 |
re PR fortran/77765 (ICE in gfc_match_oacc_routine, at fortran/openmp.c:1781)
PR fortran/77765
gcc/fortran/
* openmp.c (gfc_match_oacc_routine): Check if proc_name exist before
comparing the routine name against it.
gcc/testsuite/
* gfortran.dg/goacc/pr77765.f90: New test.
From-SVN: r249809
Diffstat (limited to 'gcc/fortran/openmp.c')
-rw-r--r-- | gcc/fortran/openmp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c index 2b56558..8400354 100644 --- a/gcc/fortran/openmp.c +++ b/gcc/fortran/openmp.c @@ -2295,7 +2295,8 @@ gfc_match_oacc_routine (void) if (st) { sym = st->n.sym; - if (strcmp (sym->name, gfc_current_ns->proc_name->name) == 0) + if (gfc_current_ns->proc_name != NULL + && strcmp (sym->name, gfc_current_ns->proc_name->name) == 0) sym = NULL; } |