In reply to @chronos.vitaqua "Idk what these mean!": Basically if you compile with these flags and then run the binary, when it finishes executing you'll get stacktraces for every piece of memory that leaked. No stacktraces means no leaks. --cc:clang --> compile with clang (has imo best sanitizer support) -d:useMalloc --> use the Malloc Allocator instead of nim's default one. For tools like sanitizers and general memory debugging always the best idea --passc --> Pass these flags on to clang for the C --> Binary compilation step --passl --> Pass these flags on to the linker for the C --> Binary compilation step --debugger:native --> Translates the memory addresses in the stacktrace to actual file-names and proc-names, so they're actually useful and you know what's being called in the first place