Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Original bug ID: 7695 Reporter: copy Assigned to: @garrigue Status: resolved (set by @xavierleroy on 2017-12-28T18:37:46Z) Resolution: fixed Priority: normal Severity: minor Version: 4.06.0 Target version: 4.07.0+dev/beta2/rc1/rc2 Fixed in version: 4.07.0+dev/beta2/rc1/rc2 Category: typing Has duplicate: #7766 Child of: #6608 Monitored by: @nojb @gasche
The following code produce a compiler error ("Fatal error: exception Ctype.Unify(_)").
let _ = let arb = QCheck.char in let gen = QCheck.Gen.int in { arb with gen }
The text was updated successfully, but these errors were encountered:
Comment author: @nojb
Simpler repro $ rlwrap ocaml OCaml version 4.06.0
type 'a t = { f : 'a; g : 'a; }
val x : int t = {f = 12; g = 43}
Fatal error: exception Ctype.Unify(_) $
Sorry, something went wrong.
Bug introduced in 844016f (MPR #6608).
Comment author: @garrigue
Thanks @nojebar. Here is a PR that fixes the problem: #1541
Note that the output of the test is no there yet, as expect tests do not seem to work currently...
Also, looking at the code, I think that the logic could be better: i.e., first refine the return type for absent fields, and then use this information to type overridden fields. But this is another story.
Comment author: @xavierleroy
GPR merged in trunk, will be in 4.07
garrigue
No branches or pull requests
Original bug ID: 7695
Reporter: copy
Assigned to: @garrigue
Status: resolved (set by @xavierleroy on 2017-12-28T18:37:46Z)
Resolution: fixed
Priority: normal
Severity: minor
Version: 4.06.0
Target version: 4.07.0+dev/beta2/rc1/rc2
Fixed in version: 4.07.0+dev/beta2/rc1/rc2
Category: typing
Has duplicate: #7766
Child of: #6608
Monitored by: @nojb @gasche
Bug description
The following code produce a compiler error ("Fatal error: exception Ctype.Unify(_)").
let _ =
let arb = QCheck.char in
let gen = QCheck.Gen.int in
{ arb with gen }
Steps to reproduce
The text was updated successfully, but these errors were encountered: