Search Issue Tracker
Fixed in 2018.2.X
Votes
0
Found in
5.5.4p5
Issue ID
988907
Regression
No
[iOS][IL2cpp] The C++ code generation done by IL2CPP is wrong when using the C# "out" keyword
Reproduction Steps:
1. Open User's project
2. Set Scripting Backend to IL2CPP
3. Open "ffi_unity.cs" and "ffi.cs"
Correct:
4. Set print_and_change_value_ios parameter to "ref"
5. Build for iOS
6. In Xcode console notice that "argument current value is 11" is printed
Incorrect:
7. Change print_and_change_value_ios parameter to "out"
8. Build for iOS
9. Notice that "argument current value is 0" is printed.
Note: User included very useful README.md that explains the bug more in depth.
Expected behaviour: Ref and Out keywords work the same.
Actual result: C# Out keyword is working incorrectly with IL2CPP code generation.
Reproduced on versions: Unity 5.5.6f1, 5.6.5p1, 2017.1.3p1, 2017.2.1p3, 2017.3.1f1, 2018.1.0b6
Reproduced on device: iPhone 7 Plus iOS 10.3.2
Did not reproduce with Mono.
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
- Adaptive Probe Volume occlusion edge is calculated incorrectly when viewing probes near geometry edges
- Sampling a texture using an HLSL file throws shader errors and the code does not compile
- "Graphics.CopyTexture called with null source texture" error when Base Camera of an Overlay Camera is removed with DX11 Graphics API and Compatibility Mode enabled
- WebGL sends wrong value with large numbers when SendMessage function is used
Add comment