In tests/enum_union.ark, if one where to pass Tree by value instead of as opposed to by pointer, the test will result in a segfault. Uncommenting certain combinations of the debug printfs makes it not segfault.
I believe we're running into a weird combination of odd LLVM struct passing behavior triggering an alignment issue, as the segfault is the result of the upper half of the right pointer being cut off / set to zero.
In tests/enum_union.ark, if one where to pass
Tree
by value instead of as opposed to by pointer, the test will result in a segfault. Uncommenting certain combinations of the debugprintf
s makes it not segfault.I believe we're running into a weird combination of odd LLVM struct passing behavior triggering an alignment issue, as the segfault is the result of the upper half of the
right
pointer being cut off / set to zero.