r150620 - in /trunk/gcc: fortran/ChangeLog fort...

janus@gcc.gnu.org janus@gcc.gnu.org
Mon Aug 10 09:19:00 GMT 2009


Author: janus
Date: Mon Aug 10 09:19:24 2009
New Revision: 150620

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150620
Log:
2009-08-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40940
	* decl.c (gfc_match_type_spec): Match CLASS statement and warn about
	missing polymorphism.
	* gfortran.h (gfc_typespec): Add field 'is_class'.
	* misc.c (gfc_clear_ts): Initialize 'is_class' to zero.
	* resolve.c (type_is_extensible): New function to check if a derived
	type is extensible.
	(resolve_fl_variable_derived): Add error checks for CLASS variables.
	(resolve_typebound_procedure): Disallow non-polymorphic passed-object
	dummy arguments, turning warning into error.
	(resolve_fl_derived): Use 'type_is_extensible'. Disallow non-polymorphic
	passed-object dummy arguments for procedure pointer components,
	turning warning into error. Add error check for CLASS components.

2009-08-10  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40940
	* gfortran.dg/class_1.f03: New.
	* gfortran.dg/class_2.f03: New.
	* gfortran.dg/proc_ptr_comp_pass_1.f90: Use CLASS instead of TYPE.
	* gfortran.dg/proc_ptr_comp_pass_2.f90: Ditto.
	* gfortran.dg/proc_ptr_comp_pass_3.f90: Ditto.
	* gfortran.dg/typebound_call_10.f03: Ditto.
	* gfortran.dg/typebound_call_2.f03: Ditto.
	* gfortran.dg/typebound_call_3.f03: Ditto.
	* gfortran.dg/typebound_call_4.f03: Ditto.
	* gfortran.dg/typebound_generic_3.f03: Ditto.
	* gfortran.dg/typebound_generic_4.f03: Ditto.
	* gfortran.dg/typebound_proc_1.f08: Ditto.
	* gfortran.dg/typebound_proc_5.f03: Ditto.
	* gfortran.dg/typebound_proc_6.f03: Ditto.


Added:
    trunk/gcc/testsuite/gfortran.dg/class_1.f03
    trunk/gcc/testsuite/gfortran.dg/class_2.f03
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/decl.c
    trunk/gcc/fortran/gfortran.h
    trunk/gcc/fortran/misc.c
    trunk/gcc/fortran/resolve.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f90
    trunk/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f90
    trunk/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f90
    trunk/gcc/testsuite/gfortran.dg/typebound_call_10.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_call_2.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_call_3.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_call_4.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_generic_3.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_generic_4.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_proc_1.f08
    trunk/gcc/testsuite/gfortran.dg/typebound_proc_5.f03
    trunk/gcc/testsuite/gfortran.dg/typebound_proc_6.f03



More information about the Gcc-cvs mailing list