1*e7b8e18fSSlava Zakharin! Check that symbols without SAVE attribute from an EQUIVALENCE 2*e7b8e18fSSlava Zakharin! with at least one symbol being SAVEd (explicitly or implicitly) 3*e7b8e18fSSlava Zakharin! have implicit SAVE attribute. 4*e7b8e18fSSlava Zakharin!RUN: %flang_fc1 -fdebug-dump-symbols %s | FileCheck %s 5*e7b8e18fSSlava Zakharin 6*e7b8e18fSSlava Zakharinsubroutine test1() 7*e7b8e18fSSlava Zakharin ! CHECK-LABEL: Subprogram scope: test1 8*e7b8e18fSSlava Zakharin ! CHECK: i1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) init:1_4 9*e7b8e18fSSlava Zakharin ! CHECK: j1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 10*e7b8e18fSSlava Zakharin integer :: i1 = 1 11*e7b8e18fSSlava Zakharin integer :: j1 12*e7b8e18fSSlava Zakharin equivalence(i1,j1) 13*e7b8e18fSSlava Zakharinend subroutine test1 14*e7b8e18fSSlava Zakharin 15*e7b8e18fSSlava Zakharinsubroutine test2() 16*e7b8e18fSSlava Zakharin ! CHECK-LABEL: Subprogram scope: test2 17*e7b8e18fSSlava Zakharin ! CHECK: i1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) init:1_4 18*e7b8e18fSSlava Zakharin ! CHECK: j1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 19*e7b8e18fSSlava Zakharin integer :: i1 = 1 20*e7b8e18fSSlava Zakharin integer :: j1 21*e7b8e18fSSlava Zakharin equivalence(j1,i1) 22*e7b8e18fSSlava Zakharinend subroutine test2 23*e7b8e18fSSlava Zakharin 24*e7b8e18fSSlava Zakharinsubroutine test3() 25*e7b8e18fSSlava Zakharin ! CHECK-LABEL: Subprogram scope: test3 26*e7b8e18fSSlava Zakharin ! CHECK: i1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 27*e7b8e18fSSlava Zakharin ! CHECK: j1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 28*e7b8e18fSSlava Zakharin ! CHECK: k1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 29*e7b8e18fSSlava Zakharin integer :: i1 30*e7b8e18fSSlava Zakharin integer :: j1, k1 31*e7b8e18fSSlava Zakharin common /blk/ k1 32*e7b8e18fSSlava Zakharin save /blk/ 33*e7b8e18fSSlava Zakharin equivalence(i1,j1,k1) 34*e7b8e18fSSlava Zakharinend subroutine test3 35*e7b8e18fSSlava Zakharin 36*e7b8e18fSSlava Zakharinsubroutine test4() 37*e7b8e18fSSlava Zakharin ! CHECK-LABEL: Subprogram scope: test4 38*e7b8e18fSSlava Zakharin ! CHECK: i1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) init:1_4 39*e7b8e18fSSlava Zakharin ! CHECK: j1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 40*e7b8e18fSSlava Zakharin ! CHECK: k1, SAVE size=4 offset=0: ObjectEntity type: INTEGER(4) 41*e7b8e18fSSlava Zakharin integer :: i1 = 1 42*e7b8e18fSSlava Zakharin integer :: j1, k1 43*e7b8e18fSSlava Zakharin common /blk/ k1 44*e7b8e18fSSlava Zakharin equivalence(i1,j1,k1) 45*e7b8e18fSSlava Zakharinend subroutine test4 46