================== 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)))))