File: switch_subr.yab

package info (click to toggle)
yabasic 1%3A2.91.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,168 kB
  • sloc: ansic: 12,434; sh: 4,417; makefile: 21
file content (42 lines) | stat: -rwxr-xr-x 855 bytes parent folder | download | duplicates (4)
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!./yabasic

sub test_switch(num)
  switch num
    case 0:poke "__assert_stack_size",2:return 0:break
    case 1:return 1:break
    case 2:case 3:case 4:return 2:break
    case 5:return 5:break
    default: return 6
  end switch
end sub

sub test_switch2(num)
  switch num
    case 0: return 0
    case 1: goto outside
    case 2: return 2
  end switch
  label outside
  poke "__assert_stack_size",1
  return 1
end sub

for n=1 to 2
  print "n = ",n
  if (test_switch(0)<>0) exit 1
  if (test_switch(1)<>1) exit 2
  if (test_switch(2)<>2) exit 3
  if (test_switch(3)<>2) exit 4
  if (test_switch(4)<>2) exit 5
  if (test_switch(5)<>5) exit 6
  if (test_switch(6)<>6) exit 7
  if (test_switch(7)<>6) exit 8

  if (test_switch2(0)<>0) exit 9
  if (test_switch2(1)<>1) exit 10
  if (test_switch2(2)<>2) exit 11

  poke "__assert_stack_size",0
next n

exit 0