1! { dg-do compile } 2! { dg-options "-std=legacy" } 3! 4! Test the fix for PR49630, comment #11. 5! 6! Contributed by Vittorio Zecca <zeccav@gmail.com> 7! 8module abc 9 implicit none 10 type,abstract::abc_abstract 11 contains 12 procedure(abc_interface),deferred::abc_function 13 end type abc_abstract 14 type,extends(abc_abstract)::abc_type 15 contains 16 procedure::abc_function 17 end type abc_type 18 abstract interface 19 function abc_interface(this) ! { dg-error "assumed character length result" } 20 import abc_abstract 21 class(abc_abstract),intent(in)::this 22 character(len=*)::abc_interface 23 end function abc_interface 24 end interface 25contains 26 function abc_function(this) 27 class(abc_type),intent(in)::this 28 character(len=5)::abc_function 29 abc_function="hello" 30 end function abc_function 31 subroutine do_something(this) 32 class(abc_abstract),intent(in)::this 33 print *,this%abc_function() 34 end subroutine do_something 35end module abc 36