From 772b62cdeb500153adb178685982dbfec7ab5f32 Mon Sep 17 00:00:00 2001 From: tersec Date: Wed, 22 Mar 2023 22:05:20 +0100 Subject: [PATCH] don't access void* out of alignment in refc GC to avoid UB (#21560) (cherry picked from commit e8a70ff1794e941a6930c3d240af16a708b59339) --- lib/system/gc_common.nim | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/system/gc_common.nim b/lib/system/gc_common.nim index ff2b6ad6a6..0466a58cdf 100644 --- a/lib/system/gc_common.nim +++ b/lib/system/gc_common.nim @@ -381,7 +381,6 @@ else: let regEnd = sp +% sizeof(registers) while sp <% regEnd: gcMark(gch, cast[PPointer](sp)[]) - gcMark(gch, cast[PPointer](sp +% sizeof(pointer) div 2)[]) sp = sp +% sizeof(pointer) # Make sure sp is word-aligned sp = sp and not (sizeof(pointer) - 1)