#include <perms.h>

                                                                //      1  %begin
#line 1 "regression-bugs-tmp/exponent.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //      2    %owninteger result, a=1,b=1,c=1,d=1,e=1,f=1,g=1,h=1,i=1,j=1,k=1,l=1,m=1,n=1,o=1,p=1,q=1,r=1,s=1,t=1,u=1,v=1,w=1,x=1,y=1,z=1
_imp_current_line = 2; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 2 "regression-bugs-tmp/exponent.imp"
static int RESULT;
#line 2 "regression-bugs-tmp/exponent.imp"
static int A = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int B = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int C = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int D = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int E = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int F = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int G = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int H = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int I = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int J = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int K = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int L = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int M = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int N = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int O = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int P = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int Q = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int R = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int S = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int T = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int U = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int V = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int W = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int X = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int Y = 1;
#line 2 "regression-bugs-tmp/exponent.imp"
static int Z = 1;
                                                                //      3    a = 2
_imp_current_line = 3; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 3 "regression-bugs-tmp/exponent.imp"
A = 2;
                                                                //      4    ! exponents of 1 or 0 are OK:
                                                                //      5    %for b = 4, -1, 0 %cycle
_imp_current_line = 5; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 5 "regression-bugs-tmp/exponent.imp"
B = 5;
if ((((0)-(4)) % ((-1))) != 0) _imp_signal(5,1,0,"Illegal cycle B = 4, (-1), 0");
L_0002:;
if (B == 0) goto L_0003;
B += (-1);
                                                                //      6      result = a ^^ b
_imp_current_line = 6; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 6 "regression-bugs-tmp/exponent.imp"
RESULT = _imp_IEXP(A, B);
                                                                //      7      print string("2^^"); write(b, -1)
_imp_current_line = 7; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 7 "regression-bugs-tmp/exponent.imp"
_imp_PRINTSTRING(_imp_str_literal("2^^"));
_imp_current_line = 7; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 7 "regression-bugs-tmp/exponent.imp"
_imp_WRITE(B, (-1));
                                                                //      8      print string(" = "); write(result, -1); newline
_imp_current_line = 8; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 8 "regression-bugs-tmp/exponent.imp"
_imp_PRINTSTRING(_imp_str_literal(" = "));
_imp_current_line = 8; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 8 "regression-bugs-tmp/exponent.imp"
_imp_WRITE(RESULT, (-1));
_imp_current_line = 8; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 8 "regression-bugs-tmp/exponent.imp"
_imp_NEWLINE();
                                                                //      9    %repeat
_imp_current_line = 9; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 9 "regression-bugs-tmp/exponent.imp"
goto L_0002;
#line 9 "regression-bugs-tmp/exponent.imp"
L_0003:;
                                                                //     10    ! so this error report of an illegal exponent of 1 may be mis-reported?
                                                                //     11    a = 1; b = 1
_imp_current_line = 11; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 11 "regression-bugs-tmp/exponent.imp"
A = 1;
_imp_current_line = 11; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 11 "regression-bugs-tmp/exponent.imp"
B = 1;
                                                                //     12    result = a << b << c << (a !! b) + e - f ^^ (a + b - c << d - e) ^^ h << i; print string("result = "); write(result, -1); newline
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 12 "regression-bugs-tmp/exponent.imp"
RESULT = ((((((int)(((((((A) << (B))) << (C))) << (((A) ^ (B)))))) + (E)))) - (((_imp_IEXP(_imp_IEXP(F, (((int)(((((((int)(A)) + (B)))) - (((C) << (D)))))) - (E))), H)) << (I))));
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 12 "regression-bugs-tmp/exponent.imp"
_imp_PRINTSTRING(_imp_str_literal("result = "));
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 12 "regression-bugs-tmp/exponent.imp"
_imp_WRITE(RESULT, (-1));
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 12 "regression-bugs-tmp/exponent.imp"
_imp_NEWLINE();
                                                                //     13  %endofprogram
_imp_current_line = 13; _imp_current_file = "regression-bugs-tmp/exponent.imp";
#line 13 "regression-bugs-tmp/exponent.imp"
return 0;
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 13 "regression-bugs-tmp/exponent.imp"
// End of file
