Skip to content

Commit 9f879de

Browse files
authored
Fix __FUNCTION__ (#15)
1 parent a78975e commit 9f879de

File tree

2 files changed

+38
-38
lines changed

2 files changed

+38
-38
lines changed

lambda/translprim.ml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -753,15 +753,15 @@ let transl_primitive loc p env ty ~poly_mode path =
753753
in
754754
let params = make_params p.prim_arity in
755755
let args = List.map (fun (id, _) -> Lvar id) params in
756-
let loc =
757-
Debuginfo.Scoped_location.map_scopes (fun ~scopes ->
758-
Debuginfo.Scoped_location.enter_partial_or_eta_wrapper ~scopes)
759-
loc
760-
in
761-
let body = lambda_of_prim p.prim_name prim loc args None in
762756
match params with
763-
| [] -> body
757+
| [] -> lambda_of_prim p.prim_name prim loc args None
764758
| _ ->
759+
let loc =
760+
Debuginfo.Scoped_location.map_scopes (fun ~scopes ->
761+
Debuginfo.Scoped_location.enter_partial_or_eta_wrapper ~scopes)
762+
loc
763+
in
764+
let body = lambda_of_prim p.prim_name prim loc args None in
765765
let to_alloc_mode m = to_alloc_mode ~poly:poly_mode m in
766766
let arg_modes = List.map to_alloc_mode p.prim_native_repr_args in
767767
let region =

testsuite/tests/translprim/locs.reference

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -9,34 +9,34 @@ an expression
99
another expression
1010
locs.ml, 40, 14, 49
1111
yet another expression
12-
Locs.local_no_arg.(partial)
13-
Locs.fn_multi.(partial)
14-
Locs.fn_function.(partial)
15-
Locs.fn_poly.(partial)
16-
Locs.Mod1.Nested.apply.(partial)
17-
Locs.anon.(partial)
18-
Locs.anon.(partial)
19-
Locs.anon.(fun).(partial)
20-
Locs.double_anon.(partial)
21-
Locs.double_anon.(fun).(partial)
22-
Locs.double_anon.(fun).(partial)
23-
Locs.local.(partial)
24-
Locs.local.inner.(partial)
25-
Locs.double_local.(partial)
26-
Locs.double_local.inner1.(partial)
27-
Locs.double_local.inner1.inner2.(partial)
28-
Locs.local_no_arg.(fun).(partial)
29-
Locs.local_no_arg.inner.(partial)
30-
Locs.curried.(partial)
31-
Locs.curried.inner.(partial)
32-
Locs.local_module.(partial)
33-
Locs.local_module.N.r.(partial)
34-
Locs.local_module.N.foo.(partial)
35-
Locs.Functor.fn.(partial)
36-
Locs.Rec1.fn.(partial)
37-
Locs.Rec2.fn.(partial)
38-
Locs.(+@+).(partial)
39-
Locs.klass#meth.(partial)
40-
Locs.inline_object.object#meth.(partial)
41-
Locs.inline_object.object#othermeth.(partial)
42-
Locs.bang.(partial)
12+
Locs.local_no_arg
13+
Locs.fn_multi
14+
Locs.fn_function
15+
Locs.fn_poly
16+
Locs.Mod1.Nested.apply
17+
Locs.anon
18+
Locs.anon
19+
Locs.anon.(fun)
20+
Locs.double_anon
21+
Locs.double_anon.(fun)
22+
Locs.double_anon.(fun)
23+
Locs.local
24+
Locs.local.inner
25+
Locs.double_local
26+
Locs.double_local.inner1
27+
Locs.double_local.inner1.inner2
28+
Locs.local_no_arg.(fun)
29+
Locs.local_no_arg.inner
30+
Locs.curried
31+
Locs.curried.inner
32+
Locs.local_module
33+
Locs.local_module.N.r
34+
Locs.local_module.N.foo
35+
Locs.Functor.fn
36+
Locs.Rec1.fn
37+
Locs.Rec2.fn
38+
Locs.(+@+)
39+
Locs.klass#meth
40+
Locs.inline_object.object#meth
41+
Locs.inline_object.object#othermeth
42+
Locs.bang

0 commit comments

Comments
 (0)