pkubaj commented on PR #512:
URL: https://github.com/apache/openoffice/pull/512#issuecomment-6375324815

   1. A UNO struct can only hold UNO types, cppumaker emits no packing or 
alignment attributes. Checked with base LLVM on FreeBSD 15.1-RELEASE. Nested 
floats, inherited doubles, nested + inherited (four doubles) and eight doubles 
all come back in f1-fN. Nine doubles, and mixed double/float aggregates, come 
back in r3/r4 or through a hidden pointer, which is what return_in_fprs() and 
return_in_hidden_param() pick for them.
   2. Since macOS changes in August trunk has the cases for TwoFloats, 
AllFloats and ThreeDoubles (the last one is larger
   than 16 bytes, so it only works if it's classified as an HFA), SmallStruct, 
ThreeLongs, OneByte and MixedFloatLong (r3/r4), and MediumStruct and BigStruct 
(hidden pointer).
   Nested and inherited float structs aren't in the bridgetest. I only checked 
them against the compiler (above), because adding them to the bridgetest IDL 
means every other bridge has to pass them too. I can add them if you think 
that's worth it.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to