1program test1 2 3 use tst_utils 4 use variable 5 6 implicit none 7 8 type(variable_t) :: va 9 real(dp) :: a, b(2), c(2,2) 10 real(dp), pointer :: pa =>null() 11 character(len=15) :: sa, sb 12 character(len=20) :: ca, cb 13 logical :: success 14 15#include "variable_declarations_.inc" 16 17 a = 1.0_dp 18 b = 2._dp 19 c = 3._dp 20 21 call assign(va,a) 22 pd0 = transfer(va%enc,pd0) 23 print '(a2,tr1,f4.2)',va%t,pd0%p 24 call associate(pa,va,success=success) 25 if ( success ) then 26 print *,'Success: ',pa 27 end if 28 29 call assign(va,b) 30 call assign(b,va) 31 pd1 = transfer(va%enc,pd1) 32 print '(a2,2(tr1,f4.2))',va%t,pd1%p 33 34 call assign(va,c) 35 pd2 = transfer(va%enc,pd2) 36 print '(a2,4(tr1,f4.2))',va%t,pd2%p 37 38 call assign(va,1) 39 pi0 = transfer(va%enc,pi0) 40 print '(a2,tr1,i0)',va%t,pi0%p 41 42 ca = 'hello world' 43 sa = ca 44 call assign(va,sa) 45 46 call assign(sb,va) 47 cb = sb 48 print *,cb 49 50 call delete(va) 51 52end program test1 53