Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes the your issue.
Debugging process:
My log were different from the one you reported on the forum (I also used GcAssert)
I looked into strlen to check if there wasn't an issue in its usage as it's easy to misuse.
I added an
echo addr(a)
to check the address and the error changed completely toI looked into the C code into what called newObjNoInit, found that it was creating a new string.
But in general a new string even uninitialized works fine in Nim. Looking back into the code,
the only unusual thing related to GC was returning a
ref Db
(instead of having atype DbRef = ref Db
alias) so I tried to remove that and code compiled and ran successfully.