#include "perms.h"

                                                                //      1  %begin
#line 1 "regression-compile-tmp/casterr.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //      2  
                                                                //      3  %integerfunction hash addr(%string (31) name)
_imp_current_line = 3; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 3 "regression-compile-tmp/casterr.imp"
int HASHADDR( _imp_string /*%string(31)*/ NAME )
#line 3 "regression-compile-tmp/casterr.imp"
{
  __label__ _imp_endofblock;
                                                                //      4    %constinteger hash table size = 1023
_imp_current_line = 4; _imp_current_file = "regression-compile-tmp/casterr.imp";
                                                                //      5    %integer hash index = 0; %integer char
_imp_current_line = 5; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 5 "regression-compile-tmp/casterr.imp"
int HASHINDEX;
#line 5 "regression-compile-tmp/casterr.imp"
HASHINDEX = 0;
_imp_current_line = 5; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 5 "regression-compile-tmp/casterr.imp"
int CHAR;
                                                                //      6    %for char = 1,1,LENGTH (name) %cycle
_imp_current_line = 6; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 6 "regression-compile-tmp/casterr.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = _imp_LENGTH(&NAME); CHAR = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle CHAR = 1, 1, _imp_LENGTH(&NAME)");
CHAR -= _increment; _control -= _increment;
L_0002:;
if (CHAR == _final) goto L_0003;
CHAR += _increment; _control += _increment;
if (CHAR != _control) _imp_signal(4,2,0,"Corrupt control variable CHAR"); /* FOR loop control variable corrupted */
}
                                                                //      7      hash index =  hash index<<1 !! CHARNO(name,char)
_imp_current_line = 7; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 7 "regression-compile-tmp/casterr.imp"
HASHINDEX = ((((HASHINDEX) << (1))) ^ (*_imp_CHARNO(&NAME, CHAR)));
                                                                //      8    %repeat
_imp_current_line = 8; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 8 "regression-compile-tmp/casterr.imp"
goto L_0002;
#line 8 "regression-compile-tmp/casterr.imp"
L_0003:;
                                                                //      9    %result =  hash index & hash table size
_imp_current_line = 9; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 9 "regression-compile-tmp/casterr.imp"
return ((HASHINDEX) & (1023));
                                                                //     10  %end  {of  hash code generated from string}
_imp_current_line = 10; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 10 "regression-compile-tmp/casterr.imp"
_imp_endofblock: ;
} // End of block HASHADDR at level 2
                                                                //     11  
                                                                //     12  %endofprogram
_imp_current_line = 12; _imp_current_file = "regression-compile-tmp/casterr.imp";
#line 12 "regression-compile-tmp/casterr.imp"
return 0;
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 12 "regression-compile-tmp/casterr.imp"
// End of file
