mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-07 05:23:20 +00:00
fixes #3550
This commit is contained in:
@@ -18,7 +18,12 @@ proc genConv(n: PNode, d: PType, downcast: bool): PNode =
|
||||
var source = skipTypes(n.typ, abstractPtrs)
|
||||
if (source.kind == tyObject) and (dest.kind == tyObject):
|
||||
var diff = inheritanceDiff(dest, source)
|
||||
if diff == high(int): internalError(n.info, "cgmeth.genConv")
|
||||
if diff == high(int):
|
||||
# see bug #3550 which triggers it. XXX This is a hack but I don't know yet
|
||||
# how the real fix looks like:
|
||||
localError(n.info, "there is no subtype relation between " &
|
||||
typeToString(d) & " and " & typeToString(n.typ))
|
||||
#internalError(n.info, "cgmeth.genConv")
|
||||
if diff < 0:
|
||||
result = newNodeIT(nkObjUpConv, n.info, d)
|
||||
addSon(result, n)
|
||||
|
||||
2
todo.txt
2
todo.txt
@@ -1,7 +1,7 @@
|
||||
essential for 1.0
|
||||
=================
|
||||
|
||||
- document special cased varargs[untyped] and varargs[typed]
|
||||
- introduce newSeqOfCap(10)
|
||||
- The remaining bugs of the lambda lifting pass that is responsible to enable
|
||||
closures and closure iterators need to be fixed.
|
||||
- ``concept`` needs to be refined, a nice name for the feature is not enough.
|
||||
|
||||
Reference in New Issue
Block a user