source: translator/Tests/Parser/Expected/Forall.tst @ 51587aa

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newstringwith_gc
Last change on this file since 51587aa was 51b7345, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

initial commit

  • Property mode set to 100644
File size: 5.8 KB
Line 
1f: a typedef definition for pointer to forall
2      T: a type variable
3function
4    with parameters
5      int
6    returning int
7
8swap: a forall
9    T: a type variable
10function
11  with parameters
12    left: a instance of type T
13    right: a instance of type T
14  returning void
15  with body
16    temp: a instance of type T
17   
18    Application of:
19
20        Operator: Assign
21
22    ... on arguments:
23
24        Referencing: Variable: left
25
26        Referencing: Variable: right
27
28   
29    Application of:
30
31        Operator: Assign
32
33    ... on arguments:
34
35        Referencing: Variable: right
36
37        Referencing: Variable: temp
38
39
40context sumable
41  with type parameters
42    T: a type variable
43  with members
44    0: a const instance of type T
45    ?+?: a function
46      with parameters
47        instance of type T
48        instance of type T
49      returning instance of type T
50
51    ?++: a function
52      with parameters
53        instance of type T
54      returning instance of type T
55
56    ?+=?: a function
57      with parameters
58        instance of type T
59        instance of type T
60      returning tuple with members
61          instance of type T
62
63
64
65T1: a type definition
66  with assertions
67    0: a const instance of type T1
68    ?+?: a function
69      with parameters
70        instance of type T1
71        instance of type T1
72      returning instance of type T1
73
74    ?++: a function
75      with parameters
76        instance of type T1
77      returning instance of type T1
78
79    ?+=?: a function
80      with parameters
81        instance of type T1
82        instance of type T1
83      returning tuple with members
84          instance of type T1
85
86
87 
88T2: a type definition
89  with parameters
90  P1: a type variable
91  P2: a type variable
92
93T3: a type definition
94  with assertions
95    instance of context sumable
96      with parameters
97      Type:        instance of type T3
98
99 
100T2: a type definition
101  with parameters
102  P1: a type variable
103  P2: a type variable
104
105  with assertions
106    instance of context sumable
107      with parameters
108      Type:        instance of type T2 with parameters
109          Type:            instance of type P1
110          Type:            instance of type P2
111
112
113  for instance of struct __anonymous0
114    with members
115      i: a instance of type P1
116      j: a instance of type P2
117
118w1: a instance of type T2 with parameters
119  Type:    int
120  Type:    int
121
122w2: a typedef definition for instance of type T2 with parameters
123    Type:      int
124    Type:      int
125
126g2: a instance of type w2
127w3: a type definition for instance of type T2 with parameters
128    Type:      int
129    Type:      int
130
131g3: a instance of type w3
132sum: a forall
133    T: a type variable
134      with assertions
135        instance of context sumable
136          with parameters
137          Type:            instance of type T
138
139     
140function
141  with parameters
142    n: a int
143    a: a open array of instance of type T
144  returning instance of type T
145  with body
146    total: a instance of type T
147    i: a int
148
149    For
150
151        Expression:
152
153            Application of:
154
155                Operator: Assign
156
157            ... on arguments:
158
159                Referencing: Variable: i
160
161                Referencing: Variable: 0
162
163            Application of:
164
165                Operator: LThan
166
167            ... on arguments:
168
169                Referencing: Variable: i
170
171                Referencing: Variable: n
172
173            Application of:
174
175                Operator: PlusAssn
176
177            ... on arguments:
178
179                Referencing: Variable: i
180
181                Referencing: Variable: 1
182
183        Branches of execution:
184           
185            Application of:
186
187                Operator: Assign
188
189            ... on arguments:
190
191                Referencing: Variable: total
192
193                Application of:
194
195                    Operator: Plus
196
197                ... on arguments:
198
199                    Referencing: Variable: total
200
201                    Application of:
202
203                        Operator: Index
204
205                    ... on arguments:
206
207                        Referencing: Variable: a
208
209                        Referencing: Variable: i
210
211
212    Return
213
214        Expression:
215
216            Referencing: Variable: total
217
218twice: a forall
219    T: a type variable
220      with assertions
221        0: a const instance of type T
222        ?+?: a function
223          with parameters
224            instance of type T
225            instance of type T
226          returning instance of type T
227
228        ?++: a function
229          with parameters
230            instance of type T
231          returning instance of type T
232
233        ?+=?: a function
234          with parameters
235            instance of type T
236            instance of type T
237          returning tuple with members
238              instance of type T
239
240
241     
242function
243  with parameters
244    t: a instance of type T
245  returning instance of type T
246  with body
247
248    Return
249
250        Expression:
251
252            Application of:
253
254                Operator: Plus
255
256            ... on arguments:
257
258                Referencing: Variable: t
259
260                Referencing: Variable: t
261
262main: a function
263  with no parameters
264  returning int
265  with body
266    x: a int
267    y: a int
268    a: a array of     10 int
269    f: a float
270   
271    Application of:
272
273        Referencing: Variable: swap
274
275    ... on arguments:
276
277        Referencing: Variable: x
278
279        Referencing: Variable: y
280
281   
282    Application of:
283
284        Referencing: Variable: twice
285
286    ... on arguments:
287
288        Referencing: Variable: x
289
290        Referencing: Variable: y
291
292   
293    Application of:
294
295        Operator: Assign
296
297    ... on arguments:
298
299        Referencing: Variable: f
300
301        Application of:
302
303            Referencing: Variable: min
304
305        ... on arguments:
306            4.0
307            3.0
308
309   
310    Application of:
311
312        Referencing: Variable: sum
313
314    ... on arguments:
315        10
316
317        Referencing: Variable: a
318
319
Note: See TracBrowser for help on using the repository browser.