93 lines · plain
1! RUN: %flang_fc1 -fdebug-unparse %s 2>&1 | FileCheck %s2 3!CHECK-NOT: error:4module mm5 interface6 module subroutine m(n)7 end8 end interface9end module mm10 11program p12 use mm1320 print*, 'p'1421 call p11522 call p21623 f0 = f(0); print '(f5.1)', f01724 f1 = f(1); print '(f5.1)', f11825 call s(0); call s(1)1926 call m(0); call m(1)2027 if (.false.) goto 292128 print*, 'px'22contains23 subroutine p124 print*, 'p1'25 goto 292629 end subroutine p127 subroutine p228 print*, 'p2'29 goto 293029 end subroutine p23129 end32 33function f(n)34 print*, 'f'3531 call f13632 call f237 f = 30.38 if (n == 0) goto 3939 f = f + 3.40 print*, 'fx'41contains42 subroutine f143 print*, 'f1'44 goto 394539 end subroutine f146 subroutine f247 print*, 'f2'48 goto 394939 end subroutine f25039 end51 52subroutine s(n)53 print*, 's'5441 call s15542 call s25643 call s357 if (n == 0) goto 4958 print*, 'sx'59contains60 subroutine s161 print*, 's1'62 goto 496349 end subroutine s164 subroutine s265 print*, 's2'66 goto 496749 end subroutine s268 subroutine s369 print*, 's3'70 goto 497149 end subroutine s37249 end73 74submodule(mm) mm175contains76 module procedure m77 print*, 'm'78 50 call m179 51 call m280 if (n == 0) goto 5981 print*, 'mx'82 contains83 subroutine m184 print*, 'm1'85 goto 5986 59 end subroutine m187 subroutine m288 print*, 'm2'89 goto 5990 59 end subroutine m291 59 end procedure m92end submodule mm193