From 1663ad77e3398fec0b5d6b00516f91565ce12cce Mon Sep 17 00:00:00 2001 From: "Andrey R (cooldome)" Date: Tue, 17 Nov 2020 18:54:14 +0000 Subject: [PATCH] Revert "fix #15623 (#16009)" This reverts commit 0f7f159a35bc10a43ff15bcb6c20eefdc574138e. --- compiler/semfold.nim | 2 +- lib/posix/posix_linux_amd64_consts.nim | 2 +- tests/ccgbugs/t15623.nim | 11 ----------- tests/ccgbugs/t15623_2.nim | 13 ------------- 4 files changed, 2 insertions(+), 26 deletions(-) delete mode 100644 tests/ccgbugs/t15623.nim delete mode 100644 tests/ccgbugs/t15623_2.nim diff --git a/compiler/semfold.nim b/compiler/semfold.nim index f38359a64c..9b21c5fa35 100644 --- a/compiler/semfold.nim +++ b/compiler/semfold.nim @@ -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 and a.kind != nkNilLit: + if n.typ != nil and n.typ.kind in NilableTypes: # we allow compile-time 'cast' for pointer types: result = a result.typ = n.typ diff --git a/lib/posix/posix_linux_amd64_consts.nim b/lib/posix/posix_linux_amd64_consts.nim index 917c1f966d..f3230f71d6 100644 --- a/lib/posix/posix_linux_amd64_consts.nim +++ b/lib/posix/posix_linux_amd64_consts.nim @@ -365,7 +365,7 @@ const SCHED_RR* = cint(2) const SCHED_OTHER* = cint(0) # -const SEM_FAILED* = nil +const SEM_FAILED* = cast[pointer]((nil)) # const SIGEV_NONE* = cint(1) diff --git a/tests/ccgbugs/t15623.nim b/tests/ccgbugs/t15623.nim deleted file mode 100644 index c8246c85b7..0000000000 --- a/tests/ccgbugs/t15623.nim +++ /dev/null @@ -1,11 +0,0 @@ -discard """ - action: "compile" -""" - -# bug #15623 -block: - echo cast[ptr int](nil)[] - -block: - var x: ref int = nil - echo cast[ptr int](x)[] diff --git a/tests/ccgbugs/t15623_2.nim b/tests/ccgbugs/t15623_2.nim deleted file mode 100644 index 4f33bc745d..0000000000 --- a/tests/ccgbugs/t15623_2.nim +++ /dev/null @@ -1,13 +0,0 @@ -discard """ - output: '''0 -0 -''' -""" - -# bug #15623 -block: - echo cast[int](cast[ptr int](nil)) - -block: - var x: ref int = nil - echo cast[int](cast[ptr int](x))