https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70260
--- Comment #7 from Thomas Koenig <tkoenig at gcc dot gnu.org> --- Author: tkoenig Date: Sun Nov 18 09:16:19 2018 New Revision: 266248 URL: https://gcc.gnu.org/viewcvs?rev=266248&root=gcc&view=rev Log: 2018-11-18 Thomas Koenig <tkoe...@gcc.gnu.org> PR fortran/70260 * expr.c (gfc_check_assign): Reject assigning to an external symbol. (gfc_check_pointer_assign): Add suppress_type_test argument. Insert line after if. A non-proc pointer can not point to a constant. Only check types if suppress_type_test is false. * gfortran.h (gfc_check_pointer_assign): Add optional suppress_type_test argument. * resolve.c (gfc_resolve_code): Move up gfc_check_pointer_assign and give it the extra argument. (resolve_fl_procedure): Set error on value for a function with an inizializer. 2018-11-18 Thomas Koenig <tkoe...@gcc.gnu.org> PR fortran/70260 * gfortran.dg/proc_ptr_result_5.f90: Add dg-error directive. * gfortran.dg/protected_4.f90: Split line to allow for extra error. * gfortran.dg/protected_6.f90: Likewise. * gfortran.dg/assign_11.f90: New test. * gfortran.dg/pointer_assign_12.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/assign_11.f90 trunk/gcc/testsuite/gfortran.dg/pointer_assign_12.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/expr.c trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/proc_ptr_result_5.f90 trunk/gcc/testsuite/gfortran.dg/protected_4.f90 trunk/gcc/testsuite/gfortran.dg/protected_6.f90