re PR fortran/49074 ([OOP] Defined assignment w/ CLASS arrays: Incomplete error message)

2011-06-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/49074
	* interface.c (gfc_extend_assign): Propagate the locus from the
	assignment to the type-bound procedure call.

2011-06-16  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/49074
	* gfortran.dg/typebound_assignment_3.f03: New.

From-SVN: r175113
This commit is contained in:
Janus Weil 2011-06-16 23:45:26 +02:00
parent 45f86e0f6e
commit 67a7c837e9
4 changed files with 42 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2011-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/49074
* interface.c (gfc_extend_assign): Propagate the locus from the
assignment to the type-bound procedure call.
2011-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/49417

View File

@ -3242,6 +3242,7 @@ gfc_extend_assign (gfc_code *c, gfc_namespace *ns)
c->expr1 = gfc_get_expr ();
build_compcall_for_operator (c->expr1, actual, tb_base, tbo, gname);
c->expr1->value.compcall.assign = 1;
c->expr1->where = c->loc;
c->expr2 = NULL;
c->op = EXEC_COMPCALL;

View File

@ -1,3 +1,8 @@
2011-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/49074
* gfortran.dg/typebound_assignment_3.f03: New.
2011-06-16 Steve Ellcey <sje@cup.hp.com>
PR testsuite/48727

View File

@ -0,0 +1,30 @@
! { dg-do compile }
!
! PR 49074: [OOP] Defined assignment w/ CLASS arrays: Incomplete error message
!
! Contribute by Jerry DeLisle <jvdelisle@gcc.gnu.org>
module foo
type bar
contains
generic :: assignment (=) => assgn
procedure :: assgn
end type
contains
elemental subroutine assgn (a, b)
class (bar), intent (inout) :: a
class (bar), intent (in) :: b
end subroutine
end module
use foo
type (bar) :: foobar(2)
foobar = bar() ! { dg-error "currently not implemented" }
end
! { dg-final { cleanup-modules "foo" } }