1LOGICAL :: L = .FALSE.
2
3SELECT CASE (L)
4   CASE (.TRUE.)
5      STOP 1
6   CASE (.FALSE.)
7      CONTINUE
8   CASE DEFAULT
9      STOP 2
10END SELECT
11
12SELECT CASE (L)
13   CASE (.TRUE., .FALSE.)
14      CONTINUE
15   CASE DEFAULT
16      STOP 3
17END SELECT
18
19SELECT CASE (L)
20   CASE (.FALSE.)
21      CONTINUE
22   CASE DEFAULT
23      STOP 4
24END SELECT
25
26SELECT CASE (L)
27   CASE (.NOT. .TRUE.)
28      CONTINUE
29   CASE DEFAULT
30      STOP 5
31END SELECT
32
33SELECT CASE (.NOT. L)
34   CASE (.TRUE.)
35      CONTINUE
36   CASE DEFAULT
37      STOP 6
38END SELECT
39
40SELECT CASE (Truth_or_Dare() .OR. L)
41   CASE (.TRUE.)
42      CONTINUE
43   CASE DEFAULT
44      STOP 7
45END SELECT
46
47CONTAINS
48
49   FUNCTION Truth_or_Dare ()
50      LOGICAL Truth_or_Dare
51      Truth_or_Dare = .TRUE.
52   END FUNCTION
53
54END
55
56