aboutsummaryrefslogtreecommitdiff
path: root/tools/tree-sitter/test/corpus/record_const_base.txt
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)))))