File: string_65.f90

package info (click to toggle)
lfortran 0.58.0-4
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 54,512 kB
  • sloc: cpp: 162,179; f90: 68,251; python: 17,476; ansic: 6,278; yacc: 2,334; sh: 1,317; fortran: 892; makefile: 33; javascript: 15
file content (28 lines) | stat: -rw-r--r-- 590 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
module string_65_mod
  
  contains
  
    function foo(probs) result(ret)
      logical :: ret
      character(len=64), intent(in), optional :: probs(:)
      if(present(probs)) then
        ret = all(probs == "HelloWorld!")
      else
        ret = .false.
      end if
    
    end function
  
end module 
  
  
program test
    use string_65_mod
    character(64) :: char_arr(10)
    if(foo() .neqv. .false.) error stop
    char_arr = "HelloWorld!"
    if(foo(char_arr) .neqv. .true.) error stop
    char_arr = "whatever"
    if(foo(char_arr) .neqv. .false.) error stop

end program test