-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
marshal regression with refs that alias the same object #16496
Labels
Comments
dylanagreen
added a commit
to dylanagreen/chrysaora
that referenced
this issue
Dec 29, 2020
3 tasks
This was referenced Nov 24, 2023
viega
pushed a commit
to viega/Nim
that referenced
this issue
Nov 26, 2023
Araq
pushed a commit
that referenced
this issue
Nov 26, 2023
Fixes #16496 ![Marshal doesn't properly unmarshal *most* ref objects; the exceptions being nil ones](https://github-production-user-asset-6210df.s3.amazonaws.com/4764481/285471431-a39ee2c5-5670-4b12-aa10-7a10ba6b5b96.gif) Test case added. Note that this test (t9754) does pass locally, but there are tons of failures by default on OS X arm64, mostly around the bohem GC, so it's pretty spammy, and could easily have missed something. If there are better instructions please do let me know. --------- Co-authored-by: John Viega <[email protected]> Co-authored-by: John Viega <[email protected]> Co-authored-by: ringabout <[email protected]>
narimiran
pushed a commit
that referenced
this issue
Apr 18, 2024
Fixes #16496 ![Marshal doesn't properly unmarshal *most* ref objects; the exceptions being nil ones](https://github-production-user-asset-6210df.s3.amazonaws.com/4764481/285471431-a39ee2c5-5670-4b12-aa10-7a10ba6b5b96.gif) Test case added. Note that this test (t9754) does pass locally, but there are tons of failures by default on OS X arm64, mostly around the bohem GC, so it's pretty spammy, and could easily have missed something. If there are better instructions please do let me know. --------- Co-authored-by: John Viega <[email protected]> Co-authored-by: John Viega <[email protected]> Co-authored-by: ringabout <[email protected]> (cherry picked from commit 5b2fcab)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Example
Current Output
Expected Output
Nothing.
Additional Information
If
o = Obj(i: 1, b: false)
is replaced witho = Obj()
, the above segfault will not occur. Instead, the marshaling will appear to succeed, but the second assertion will fail. The example code will run without issues ifObj
is anobject
rather than aref object
. This may be related to issue #15934.This code runs without issue in 1.2.6, but fails in 1.2.8 and devel.
git bisect
on theversion-1-2
branch indicates that the first bad commit is 2624de0Output of
nim -v
for above stacktrace:The text was updated successfully, but these errors were encountered: