blob: 2d7f96c88c9035361fcaf0ca7dcccaf1dd0044ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
==================
record_const_base
==================
module
type
B = record
x: Int
end
CB = const B
D = record(CB)
y: Int
end
proc f()
var
d: D
begin
d.x := 1;
d.y := 2
return
end.
---
(source_file
(module_declaration
(type_section
(type_declaration
(identifier_definition
(identifier))
(record_type
(field_declaration
(field_identifier
(identifier))
(identifier))))
(type_declaration
(identifier_definition
(identifier))
(const_type
(identifier)))
(type_declaration
(identifier_definition
(identifier))
(record_type
(identifier)
(field_declaration
(field_identifier
(identifier))
(identifier)))))
(procedure_declaration
(identifier_definition
(identifier))
(parameter_list)
(procedure_body
(block
(var_section
(variable_declaration
(identifier_definition
(identifier))
(identifier)))
(assignment_statement
(field_expression
(identifier)
(identifier))
(literal
(integer)))
(assignment_statement
(field_expression
(identifier)
(identifier))
(literal
(integer))))
(return_clause)))))
|