* fix #15623

* add testcase for #15623

* fix

* add testcase
This commit is contained in:
flywind 2020-11-18 01:05:20 +08:00 • committed by GitHub
commit 0f7f159a35
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 26 additions and 2 deletions

View file

@ -674,7 +674,7 @@ proc getConstExpr(m: PSym, n: PNode; idgen: IdGenerator; g: ModuleGraph): PNode
of nkCast:
var a = getConstExpr(m, n[1], idgen, g)
if a == nil: return
if n.typ != nil and n.typ.kind in NilableTypes:
if n.typ != nil and n.typ.kind in NilableTypes and a.kind != nkNilLit:
# we allow compile-time 'cast' for pointer types:
result = a
result.typ = n.typ