ceastlund

Results 10 issues of ceastlund

Currently, ocamlformat moves `@inline` attributes to the end of a functor declaration: ```ocaml module Make (M : S) = struct end [@@inline] ``` When the body of the functor is...

Kind/feature-request

**Describe the bug** ``` let _ = 1 + (* ____________________ *) (* ____________________ *) 2 ;; ``` **How to Reproduce** With `--profile=janestreet`, gives the following error: ``` BUG: formatting...

Kind/Bug :x:

**Is your feature request related to a problem? Please describe.** Right now, ocamlformat can generate code like this: ``` if peacetime then do_nothing () else get_launch_authorization_exn ~from:missile_silo ~for:target ~authorization:current_user; launch_the_missiles...

Kind/feature-request
JaneStreet

**Current behavior** Currently, `not a && not b` gets styled to `(not a) && not b`. There are similar issues with other forms without terminating delimiters, like `match`, where they...

Kind/style-suggestion
JaneStreet

**Describe the bug** This code: ``` let _ = match x with | None -> ((* comment preceding [try] *) try f () with | exn -> raise exn) |...

Kind/Bug :x:

**Describe the bug** The last line of this definition should be wrapped, but isn't: ``` let _ = match () with | _ -> (match () with | _ ->...

Kind/Bug :x:
JaneStreet

**Describe the bug** The nested expression should be wrapped, the line exceeds 90 characters. ``` let _ = [%str let () = very_long_function_name__________________ very_long_argument_name____________] ;; ``` **How to Reproduce** ocamlformat...

Kind/Bug :x:
JaneStreet

`let () = match () with Core.[] -> ()` fails, reporting `Core.[]` as having an identifier overlapping a pattern. I believe this is ultimately a parser bug in the source...

Addresses #363 about the associativity of `esequence`, and how this makes `deriving_inline` and `ocamlformat` clash. While I'm at it, update comment in `ppx_foo_deriver.ml` to reflect the module definition it generates.

Apparently the ocaml parser gives the body of a let+ the same location as the whole let+ expression. This makes the locations check in ppxlib fail for any ppx that...