source: to-imperative/trunk/samples/Syntax/assign2.cc @ 715

Last change on this file since 715 was 715, checked in by orlov, 18 years ago
  • Reflection on compiler changes.
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1021 bytes
Line 
1#include <rf_core.hh>
2
3namespace refal
4{
5
6using namespace rfrt;
7
8namespace assign2
9{
10
11RF_DECL (F);
12
13RF_FUNC (F, (RF_ARG _v_arg1), (RF_RES _v_res1))
14  uintptr_t _v_len__arg1 = (0 - 0);
15  if (((_v_len__arg1 % 1)))
16  {
17    retfail;
18  }
19  _v_res1 = empty;
20RF_END
21
22RF_FUNC (Main, (), (RF_RES _v_res1))
23  {
24    {
25      if (!RF_CALL (F, (empty), (_v_res1)))
26      {
27        goto block1__branch1;
28      }
29      goto block1;
30    }
31  block1__branch1: {}
32    {
33      Expr _ve_1;
34      if (!RF_CALL (F, (empty), (_ve_1)))
35      {
36        goto block1__branch2;
37      }
38      _v_res1 = empty;
39      goto block1;
40    }
41  block1__branch2: {}
42    {
43      Expr _ve_1;
44      if (!RF_CALL (F, (empty), (_ve_1)))
45      {
46        goto block1__branch3;
47      }
48      _v_res1 = _ve_1;
49      goto block1;
50    }
51  block1__branch3: {}
52    Expr _ve_1;
53    if (!RF_CALL (F, (empty), (_ve_1)))
54    {
55      error ("Unexpected fail");
56    }
57    Expr _ve_2 (_ve_1);
58    _v_res1 = _ve_2;
59  }
60block1: {}
61RF_END
62
63}
64
65rfrt::Entry rf_entry (assign2::Main);
66
67}
Note: See TracBrowser for help on using the repository browser.