diff options
Diffstat (limited to 'test/rlhc.d/case/next2_go.go-Z-G0--goto-backend.exp')
-rw-r--r-- | test/rlhc.d/case/next2_go.go-Z-G0--goto-backend.exp | 427 |
1 files changed, 427 insertions, 0 deletions
diff --git a/test/rlhc.d/case/next2_go.go-Z-G0--goto-backend.exp b/test/rlhc.d/case/next2_go.go-Z-G0--goto-backend.exp new file mode 100644 index 00000000..4c9f5ef1 --- /dev/null +++ b/test/rlhc.d/case/next2_go.go-Z-G0--goto-backend.exp @@ -0,0 +1,427 @@ +package main +import "fmt" + +var target int ; +var last int ; + + + + +var cs int; +var blen int; +var buffer [1024] byte; + +var _next2_actions [] int8 = [] int8 { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 0 } +var _next2_nfa_targs [] int8 = [] int8 { 0, 0 } +var _next2_nfa_offsets [] int8 = [] int8 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } +var _next2_nfa_push_actions [] int8 = [] int8 { 0, 0 } +var _next2_nfa_pop_trans [] int8 = [] int8 { 0, 0 } +var next2_start int = 19 +var next2_first_final int = 19 +var next2_error int = 0 +var next2_en_unused int = 2 +var next2_en_one int = 8 +var next2_en_two int = 11 +var next2_en_three int = 14 +var next2_en_main int = 19 +func prepare() { + + { + cs = int(next2_start); + } +} + +func exec(data string) { + var p int = 0 + var pe int = len(data) + + { + var _acts int + var _nacts uint + if p == pe { + goto _test_eof; + + } + if cs == 0 { + goto _out; + + } + _resume: + switch cs { + case 19: + switch ( data[p ]) { + case 10: + { + goto ctr0; + } + case 49: + { + goto ctr19; + } + case 50: + { + goto ctr20; + } + case 51: + { + goto ctr21; + } + + } + { + goto ctr1; + } + case 0: + goto _out; + case 1: + if ( data[p ]) == 120 { + { + goto ctr0; + } + + } + { + goto ctr1; + } + case 2: + if ( data[p ]) == 117 { + { + goto ctr2; + } + + } + { + goto ctr1; + } + case 3: + if ( data[p ]) == 110 { + { + goto ctr3; + } + + } + { + goto ctr1; + } + case 4: + if ( data[p ]) == 117 { + { + goto ctr4; + } + + } + { + goto ctr1; + } + case 5: + if ( data[p ]) == 115 { + { + goto ctr5; + } + + } + { + goto ctr1; + } + case 6: + if ( data[p ]) == 101 { + { + goto ctr6; + } + + } + { + goto ctr1; + } + case 7: + if ( data[p ]) == 100 { + { + goto ctr7; + } + + } + { + goto ctr1; + } + case 20: + { + goto ctr1; + } + case 8: + if ( data[p ]) == 111 { + { + goto ctr8; + } + + } + { + goto ctr1; + } + case 9: + if ( data[p ]) == 110 { + { + goto ctr9; + } + + } + { + goto ctr1; + } + case 10: + if ( data[p ]) == 101 { + { + goto ctr10; + } + + } + { + goto ctr1; + } + case 21: + { + goto ctr1; + } + case 11: + if ( data[p ]) == 116 { + { + goto ctr11; + } + + } + { + goto ctr1; + } + case 12: + if ( data[p ]) == 119 { + { + goto ctr12; + } + + } + { + goto ctr1; + } + case 13: + if ( data[p ]) == 111 { + { + goto ctr13; + } + + } + { + goto ctr1; + } + case 22: + { + goto ctr1; + } + case 14: + if ( data[p ]) == 116 { + { + goto ctr14; + } + + } + { + goto ctr1; + } + case 15: + if ( data[p ]) == 104 { + { + goto ctr15; + } + + } + { + goto ctr1; + } + case 16: + if ( data[p ]) == 114 { + { + goto ctr16; + } + + } + { + goto ctr1; + } + case 17: + if ( data[p ]) == 101 { + { + goto ctr17; + } + + } + { + goto ctr1; + } + case 18: + if ( data[p ]) == 101 { + { + goto ctr18; + } + + } + { + goto ctr1; + } + case 23: + { + goto ctr1; + } + + } + ctr1: cs = 0; + goto _again; + ctr21: cs = 1; + goto f5; + ctr2: cs = 3; + goto _again; + ctr3: cs = 4; + goto _again; + ctr4: cs = 5; + goto _again; + ctr5: cs = 6; + goto _again; + ctr6: cs = 7; + goto _again; + ctr8: cs = 9; + goto _again; + ctr9: cs = 10; + goto _again; + ctr11: cs = 12; + goto _again; + ctr12: cs = 13; + goto _again; + ctr14: cs = 15; + goto _again; + ctr15: cs = 16; + goto _again; + ctr16: cs = 17; + goto _again; + ctr17: cs = 18; + goto _again; + ctr0: cs = 19; + goto _again; + ctr19: cs = 19; + goto f3; + ctr20: cs = 19; + goto f4; + ctr7: cs = 20; + goto _again; + ctr10: cs = 21; + goto f0; + ctr13: cs = 22; + goto f1; + ctr18: cs = 23; + goto f2; + + f0: _acts = int(1 ); + goto execFuncs; + f1: _acts = int(3 ); + goto execFuncs; + f2: _acts = int(5 ); + goto execFuncs; + f3: _acts = int(7 ); + goto execFuncs; + f4: _acts = int(9 ); + goto execFuncs; + f5: _acts = int(11 ); + goto execFuncs; + + execFuncs: + _nacts = uint(_next2_actions[_acts ]); + _acts += 1; + for _nacts > 0 { + { + switch _next2_actions[_acts ] { + case 0: + {fmt.Print( "one\n" );target = 19; + cs = (target); + + } + + break; + case 1: + {fmt.Print( "two\n" );target = 19; + cs = (target); + + } + + break; + case 2: + {fmt.Print( "three\n" );target = 19; + cs = (target); + + } + + break; + case 3: + {target = 8; + cs = (target); + + last = 1; + } + + break; + case 4: + {target = 11; + cs = (target); + + last = 2; + } + + break; + case 5: + {if ( last == 2 ) { + target = 14; + cs = (target); + + + } + last = 3; + } + + break; + + } + _acts += 1; + _nacts -= 1; + } + + + } + goto _again; + + _again: + if cs == 0 { + goto _out; + + } + p += 1; + if p != pe { + goto _resume; + + } + _test_eof: {} + _out: {} + } +} +func finish() { + if cs >= next2_first_final { + fmt.Println("ACCEPT") + } else { + fmt.Println("FAIL") + } +} +var inp []string = []string { + "1one3x2two3three\n", +}; + +func main() { + for _, data := range inp { + prepare() + exec(data) + finish() + } +} |