@@ -435,28 +435,6 @@ let make_unary_expr start_pos token_end token operand =
435435 [(Nolabel , operand)]
436436 | _ -> operand
437437
438- let make_list_expression loc seq ext_opt =
439- let rec handle_seq = function
440- | [] -> (
441- match ext_opt with
442- | Some ext -> ext
443- | None ->
444- let loc = {loc with Location. loc_ghost = true } in
445- let nil = Location. mkloc (Longident. Lident " []" ) loc in
446- Ast_helper.Exp. construct ~loc nil None )
447- | e1 :: el ->
448- let exp_el = handle_seq el in
449- let loc =
450- mk_loc e1.Parsetree. pexp_loc.Location. loc_start exp_el.pexp_loc.loc_end
451- in
452- let arg = Ast_helper.Exp. tuple ~loc [e1; exp_el] in
453- Ast_helper.Exp. construct ~loc
454- (Location. mkloc (Longident. Lident " ::" ) loc)
455- (Some arg)
456- in
457- let expr = handle_seq seq in
458- {expr with pexp_loc = loc}
459-
460438let make_list_pattern loc seq ext_opt =
461439 let rec handle_seq = function
462440 | [] ->
@@ -2616,7 +2594,7 @@ and parse_jsx_opening_or_self_closing_element ~start_pos p =
26162594 Scanner. pop_mode p.scanner Jsx ;
26172595 Parser. expect GreaterThan p;
26182596 let loc = mk_loc children_start_pos children_end_pos in
2619- make_list_expression loc [] None (* no children *)
2597+ Ast_helper.Exp. make_list_expression loc [] None (* no children *)
26202598 | GreaterThan -> (
26212599 (* <foo a=b> bar </foo> *)
26222600 let children_start_pos = p.Parser. start_pos in
@@ -2639,7 +2617,7 @@ and parse_jsx_opening_or_self_closing_element ~start_pos p =
26392617 let loc = mk_loc children_start_pos children_end_pos in
26402618 match (spread, children) with
26412619 | true , child :: _ -> child
2642- | _ -> make_list_expression loc children None )
2620+ | _ -> Ast_helper.Exp. make_list_expression loc children None )
26432621 | token -> (
26442622 Scanner. pop_mode p.scanner Jsx ;
26452623 let () =
@@ -2660,11 +2638,11 @@ and parse_jsx_opening_or_self_closing_element ~start_pos p =
26602638 let loc = mk_loc children_start_pos children_end_pos in
26612639 match (spread, children) with
26622640 | true , child :: _ -> child
2663- | _ -> make_list_expression loc children None ))
2641+ | _ -> Ast_helper.Exp. make_list_expression loc children None ))
26642642 | token ->
26652643 Scanner. pop_mode p.scanner Jsx ;
26662644 Parser. err p (Diagnostics. unexpected token p.breadcrumbs);
2667- make_list_expression Location. none [] None
2645+ Ast_helper.Exp. make_list_expression Location. none [] None
26682646 in
26692647 let jsx_end_pos = p.prev_end_pos in
26702648 let loc = mk_loc jsx_start_pos jsx_end_pos in
@@ -3864,9 +3842,10 @@ and parse_list_expr ~start_pos p =
38643842 in
38653843 let make_sub_expr = function
38663844 | exprs , Some spread , start_pos , end_pos ->
3867- make_list_expression (mk_loc start_pos end_pos) exprs (Some spread)
3845+ Ast_helper.Exp. make_list_expression (mk_loc start_pos end_pos) exprs
3846+ (Some spread)
38683847 | exprs , None , start_pos , end_pos ->
3869- make_list_expression (mk_loc start_pos end_pos) exprs None
3848+ Ast_helper.Exp. make_list_expression (mk_loc start_pos end_pos) exprs None
38703849 in
38713850 let list_exprs_rev =
38723851 parse_comma_delimited_reversed_list p ~grammar: Grammar. ListExpr
@@ -3875,9 +3854,10 @@ and parse_list_expr ~start_pos p =
38753854 Parser. expect Rbrace p;
38763855 let loc = mk_loc start_pos p.prev_end_pos in
38773856 match split_by_spread list_exprs_rev with
3878- | [] -> make_list_expression loc [] None
3879- | [(exprs, Some spread, _, _)] -> make_list_expression loc exprs (Some spread)
3880- | [(exprs, None , _, _)] -> make_list_expression loc exprs None
3857+ | [] -> Ast_helper.Exp. make_list_expression loc [] None
3858+ | [(exprs, Some spread, _, _)] ->
3859+ Ast_helper.Exp. make_list_expression loc exprs (Some spread)
3860+ | [(exprs, None , _, _)] -> Ast_helper.Exp. make_list_expression loc exprs None
38813861 | exprs ->
38823862 let list_exprs = List. map make_sub_expr exprs in
38833863 Ast_helper.Exp. apply ~loc
0 commit comments