summary refs log tree commit diff stats
path: root/lib/pure/collections/tableimpl.nim
diff options
context:
space:
mode:
authorBung <crc32@qq.com>2023-05-23 15:39:44 +0800
committerGitHub <noreply@github.com>2023-05-23 09:39:44 +0200
commit76a98fee650228306a6b1af72e64bb83a9473ef0 (patch)
tree118426f25bd63b55078b8ba889f294069f3b35cc /lib/pure/collections/tableimpl.nim
parentd696ef5ad7cefdde044bce0277fac172de0f56ea (diff)
downloadNim-76a98fee650228306a6b1af72e64bb83a9473ef0.tar.gz
fix #21251 Compiler SIGSEGV when using SharedTable (#21876)
fix #21251
Diffstat (limited to 'lib/pure/collections/tableimpl.nim')
-rw-r--r--lib/pure/collections/tableimpl.nim8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/pure/collections/tableimpl.nim b/lib/pure/collections/tableimpl.nim
index 81079a3d1..fa06b9923 100644
--- a/lib/pure/collections/tableimpl.nim
+++ b/lib/pure/collections/tableimpl.nim
@@ -11,6 +11,9 @@
 
 include hashcommon
 
+const
+  defaultInitialSize* = 32
+
 template rawGetDeepImpl() {.dirty.} =   # Search algo for unconditional add
   genHashImpl(key, hc)
   var h: Hash = hc and maxHash(t)
@@ -31,9 +34,8 @@ proc rawInsert[X, A, B](t: var X, data: var KeyValuePairSeq[A, B],
   rawInsertImpl()
 
 template checkIfInitialized() =
-  when compiles(defaultInitialSize):
-    if t.dataLen == 0:
-      initImpl(t, defaultInitialSize)
+  if t.dataLen == 0:
+    initImpl(t, defaultInitialSize)
 
 template addImpl(enlarge) {.dirty.} =
   checkIfInitialized()