You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original bug ID: 4560 Reporter: palomer Status: closed (set by @garrigue on 2008-06-04T07:32:46Z) Resolution: fixed Priority: normal Severity: crash Version: 3.09.1 Fixed in version: 3.10.3+dev Category: -for Caml light use https://github.com/camllight/camllight/issues Has duplicate:#4561 Related to:#3576
Bug description
The following program segfaults in ocamlc.opt version 3.09. It has been verified by others
class c1 =
object (self)
method b =
object
method c =
object
method d = self # b
end
end
end
class c2 =
object
inherit c1
method a = ()
end
let _ = new c2 # b
let _ = new c1 # b # c # d
The text was updated successfully, but these errors were encountered:
#3576 was not completely solved. Namely, method ids were correctly handled
only when they were coming from the immediately enclosing class, without
extra nesting.
The problem here is that, since method ids do not appear in the typing
environment, there is no clean way to check for which ones are bound.
The solution aopted here is to use a reference, adding method ids when
private method calls are done, and removing them when a class defines them.
Original bug ID: 4560
Reporter: palomer
Status: closed (set by @garrigue on 2008-06-04T07:32:46Z)
Resolution: fixed
Priority: normal
Severity: crash
Version: 3.09.1
Fixed in version: 3.10.3+dev
Category: -for Caml light use https://github.com/camllight/camllight/issues
Has duplicate: #4561
Related to: #3576
Bug description
The following program segfaults in ocamlc.opt version 3.09. It has been verified by others
class c1 =
object (self)
method b =
object
method c =
object
method d = self # b
end
end
end
class c2 =
object
inherit c1
method a = ()
end
let _ = new c2 # b
let _ = new c1 # b # c # d
The text was updated successfully, but these errors were encountered: