summaryrefslogtreecommitdiff
path: root/test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@colm.net>2019-09-09 09:34:14 -0600
committerAdrian Thurston <thurston@colm.net>2019-09-09 09:34:14 -0600
commit2d8e9c3f5c0417d6237c945c50f92bf8d28b32d5 (patch)
treee463c784309e402c1c7bb89247596165b07ad8d1 /test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp
parentc0323a27ad612db4fa7d3d5c25c3e9611bcf874b (diff)
parentc171cdda894fa59515d1bdc1e00cace185366e7f (diff)
downloadcolm-2d8e9c3f5c0417d6237c945c50f92bf8d28b32d5.tar.gz
mega-merge of pruned test code
Diffstat (limited to 'test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp')
-rw-r--r--test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp184
1 files changed, 184 insertions, 0 deletions
diff --git a/test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp b/test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp
new file mode 100644
index 00000000..78aebabd
--- /dev/null
+++ b/test/cases/rlhc.d/case/eofact_cs.cs-A-F0--var-backend.exp
@@ -0,0 +1,184 @@
+using System;
+// Disables lots of warnings that appear in the test suite
+#pragma warning disable 0168, 0169, 0219, 0162, 0414
+namespace Test {
+ class Test
+ {
+
+
+
+
+
+
+ static readonly sbyte []_eofact_actions = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 2, 0, 2, 0, };
+ static readonly char []_eofact_trans_keys = { '\u0001', '\u0000', '\u0003', '\u0007', '\u0002', '\u0002', '\u0004', '\u0004', '\u0004', '\u0004', '\u0005', '\u0005', '\u0003', '\u0003', '\u0002', '\u0002', '\u0006', '\u0006', '\u0002', '\u0002', '\u0000', '\u0000', '\u0001', '\u0000', '\u0001', '\u0000', '\u0000', };
+ static readonly sbyte []_eofact_char_class = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, 1, 4, 1, 1, 5, 1, 1, 6, 1, 7, 0, };
+ static readonly sbyte []_eofact_index_offsets = { 0, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 14, 0, };
+ static readonly sbyte []_eofact_indicies = { 0, 1, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 0, };
+ static readonly sbyte []_eofact_index_defaults = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, };
+ static readonly sbyte []_eofact_trans_cond_spaces = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, };
+ static readonly sbyte []_eofact_cond_targs = { 2, 0, 6, 3, 4, 5, 10, 7, 8, 9, 12, 11, 0, };
+ static readonly sbyte []_eofact_cond_actions = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+ static readonly sbyte []_eofact_eof_actions = { 0, 9, 1, 1, 1, 1, 5, 5, 5, 5, 3, 0, 7, 0, };
+ static readonly sbyte []_eofact_nfa_targs = { 0, 0, };
+ static readonly sbyte []_eofact_nfa_offsets = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+ static readonly sbyte []_eofact_nfa_push_actions = { 0, 0, };
+ static readonly sbyte []_eofact_nfa_pop_trans = { 0, 0, };
+ static readonly int eofact_start = 1;
+ static readonly int eofact_first_final = 10;
+ static readonly int eofact_error = 0;
+ static readonly int eofact_en_main = 1;
+ int cs;
+
+ void init()
+ {
+
+ {
+ cs = (int)eofact_start;
+ }
+ }
+
+ void exec( char[] data, int len )
+ {
+ int p = 0;
+ int pe = len;
+ int eof = len;
+ string _s;
+ char [] buffer = new char [1024];
+ int blen = 0;
+
+ {
+ uint _trans = 0;
+ uint _have = 0;
+ uint _cont = 1;
+ int _keys;
+ int _inds;
+ while ( _cont == 1 )
+ {
+
+ if ( cs == 0 )
+ _cont = 0;
+
+ _have = 0;
+ if ( p == pe )
+ {
+ if ( p == eof )
+ {
+ if ( _have == 0 )
+ {
+ int __acts;
+ uint __nacts;
+ __acts = _eofact_eof_actions[cs] ;
+ __nacts = (uint )_eofact_actions[__acts ];
+ __acts += 1;
+ while ( __nacts > 0 )
+ {
+ switch ( _eofact_actions[__acts ] ) {
+ case 0:
+ {Console.Write( "a1\n" );}
+
+ break;
+ case 1:
+ {Console.Write( "a2\n" );}
+
+ break;
+ case 2:
+ {Console.Write( "a3\n" );}
+
+ break;
+ case 3:
+ {Console.Write( "a4\n" );}
+
+ break;
+
+ }
+ __nacts -= 1;
+ __acts += 1;
+ }
+
+ }
+
+ }
+
+
+ if ( _have == 0 )
+ _cont = 0;
+
+ }
+
+ if ( _cont == 1 )
+ {
+ if ( _have == 0 )
+ {
+ _keys = (cs<<1) ;
+ _inds = _eofact_index_offsets[cs] ;
+ if ( ( data[p ]) <= 116&& ( data[p ]) >= 10 )
+ {
+ int _ic = (int)_eofact_char_class[(int)( data[p ]) - 10];
+ if ( _ic <= (int)_eofact_trans_keys[_keys+1]&& _ic >= (int)_eofact_trans_keys[_keys ] )
+ _trans = (uint )_eofact_indicies[_inds + (int)( _ic - (int)_eofact_trans_keys[_keys ]) ];
+
+ else
+ _trans = (uint )_eofact_index_defaults[cs];
+
+ }
+
+ else
+ {
+ _trans = (uint )_eofact_index_defaults[cs];
+ }
+
+
+ }
+
+ if ( _cont == 1 )
+ {
+ cs = (int)_eofact_cond_targs[_trans];
+ if ( cs == 0 )
+ _cont = 0;
+
+ if ( _cont == 1 )
+ p += 1;
+
+ }
+ }
+
+ }
+
+ }
+ }
+
+ void finish( )
+ {
+ if ( cs >= eofact_first_final )
+ Console.WriteLine( "ACCEPT" );
+ else
+ Console.WriteLine( "FAIL" );
+ }
+
+ static readonly string[] inp = {
+ "",
+ "h",
+ "hell",
+ "hello",
+ "hello\n",
+ "t",
+ "ther",
+ "there",
+ "friend",
+ };
+
+
+ static readonly int inplen = 9;
+
+ public static void Main (string[] args)
+ {
+ Test machine = new Test();
+ for ( int i = 0; i < inplen; i++ ) {
+ machine.init();
+ machine.exec( inp[i].ToCharArray(), inp[i].Length );
+ machine.finish();
+ }
+ }
+ }
+}