Closed
Description
module A = {
type cond<'a> = [< #str(string) | #int(int)] as 'a
type t<'a> = {
a: option<int>,
b: option<cond<'a>>
}
let fun = (a, b) => { a: a, b: b }
}
let init: A.t<[#int(int)]> = A.fun(Some(1), Some(#int(1)))the type of A.fun shows as
(
option<int>,
option<
A.cond<
[<
| #str(string) & (string) & (string) & (string)
| #int(int) & (int) & (int) & (int)
],
>,
>,
) => A.t<
[<
| #str(string) & (string) & (string) & (string)
| #int(int) & (int) & (int) & (int)
],
>the number of repetitions appears to be proportional to the number of parameters in the function
Metadata
Metadata
Assignees
Labels
No labels
Activity
zth commentedon May 5, 2022
I cannot reproduce this with a recent master extension version. @somebody1234 could you try and reproduce by installing a recent build from CI, and reopen if it still happens for you?
somebody1234 commentedon May 5, 2022
idk... ran via debug -> client + server. disabled the extension, i still get the same issue...
using default bsconfig.json from template
somebody1234 commentedon May 5, 2022
couldn't find artifacts from CI; this should be built using latest master.
also doesn't look like i can reopen, weirdly enough...
somebody1234 commentedon May 8, 2022
(@zth)
zth commentedon May 8, 2022
@somebody1234 hey! Try this one https://github.com/rescript-lang/rescript-vscode/suites/6408092662/artifacts/233483614
...but I hovered the wrong thing, so I can actually reproduce now that I try again.
Unsure what the problem might be here, we'll probably need the expertise of @cristianoc to figure that out. I'm reopening the issue, but we have a lot going on right now so we'll unfortunately probably need to wait a bit with looking into this.
Add example of poly variant duplication.
Fix issue with duplication.
Add example of poly variant duplication.