#include "perms.h"

                                                                //      1  %begin
#line 1 "regression-compile-tmp/restests.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //      2    %string (255) s, a, b
_imp_current_line = 2; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 2 "regression-compile-tmp/restests.imp"
_imp_string /*%string(255)*/ S;
#line 2 "regression-compile-tmp/restests.imp"
_imp_string /*%string(255)*/ A;
#line 2 "regression-compile-tmp/restests.imp"
_imp_string /*%string(255)*/ B;
                                                                //      3  
                                                                //      4    s = "A string with xxx in the middle"
_imp_current_line = 4; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 4 "regression-compile-tmp/restests.imp"
S = _imp_str_literal("A string with xxx in the middle");
                                                                //      5  
                                                                //      6    s -> a.("xxx").b
_imp_current_line = 6; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 6 "regression-compile-tmp/restests.imp"
if (!_imp_resolve(S, &A, _imp_str_literal("xxx"), &B)) _imp_signal(7,1,0, "string resolution fails");
                                                                //      7  
                                                                //      8    newline
_imp_current_line = 8; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 8 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //      9  
                                                                //     10    %if s -> a.("xxx").b %start
_imp_current_line = 10; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 10 "regression-compile-tmp/restests.imp"
if (_imp_resolve(S, &A, _imp_str_literal("xxx"), &B)) goto L_0002;
                                                                //     11      newline
_imp_current_line = 11; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 11 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //     12    %finish
_imp_current_line = 12; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 12 "regression-compile-tmp/restests.imp"
L_0002:;
                                                                //     13  
                                                                //     14    s -> ("xxx").b
_imp_current_line = 14; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 14 "regression-compile-tmp/restests.imp"
if (!_imp_resolve(S, 0 /*NULL*/, _imp_str_literal("xxx"), &B)) _imp_signal(7,1,0, "string resolution fails");
                                                                //     15  
                                                                //     16    newline
_imp_current_line = 16; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 16 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //     17  
                                                                //     18    %if s -> ("xxx").b %start
_imp_current_line = 18; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 18 "regression-compile-tmp/restests.imp"
if (_imp_resolve(S, 0 /*NULL*/, _imp_str_literal("xxx"), &B)) goto L_0003;
                                                                //     19      newline
_imp_current_line = 19; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 19 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //     20    %finish
_imp_current_line = 20; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 20 "regression-compile-tmp/restests.imp"
L_0003:;
                                                                //     21  
                                                                //     22    s -> a.("xxx")
_imp_current_line = 22; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 22 "regression-compile-tmp/restests.imp"
if (!_imp_resolve(S, &A, _imp_str_literal("xxx"), 0 /*NULL*/)) _imp_signal(7,1,0, "string resolution fails");
                                                                //     23  
                                                                //     24    newline
_imp_current_line = 24; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 24 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //     25  
                                                                //     26    %if s -> a.("xxx") %start
_imp_current_line = 26; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 26 "regression-compile-tmp/restests.imp"
if (_imp_resolve(S, &A, _imp_str_literal("xxx"), 0 /*NULL*/)) goto L_0004;
                                                                //     27      newline
_imp_current_line = 27; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 27 "regression-compile-tmp/restests.imp"
_imp_NEWLINE();
                                                                //     28    %finish
_imp_current_line = 28; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 28 "regression-compile-tmp/restests.imp"
L_0004:;
                                                                //     29  
                                                                //     30  %endofprogram
_imp_current_line = 30; _imp_current_file = "regression-compile-tmp/restests.imp";
#line 30 "regression-compile-tmp/restests.imp"
return 0;
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 30 "regression-compile-tmp/restests.imp"
// End of file
