- 
    Type:
Bug
 - 
    Resolution: Unresolved
 - 
    Priority:
  P4                     
     - 
    Affects Version/s: repo-panama
 - 
    Component/s: core-libs
 
                    It seems from testing that libffi does not reliably handle by-value unions.
Others are reporting similar experiences: https://github.com/libffi/libffi/issues/33
When running java/foreign/nested/TestNested.java crashes were observed when passing the values with the following layouts:
union U{ int f0; double f1; short f2[2]; long long f3; };
And:
union U{ float f0; struct { short f0; char f1; } f1; char f2; char f3; };
(as well as derivatives)
            
Others are reporting similar experiences: https://github.com/libffi/libffi/issues/33
When running java/foreign/nested/TestNested.java crashes were observed when passing the values with the following layouts:
union U{ int f0; double f1; short f2[2]; long long f3; };
And:
union U{ float f0; struct { short f0; char f1; } f1; char f2; char f3; };
(as well as derivatives)