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
- Mono Windows Builds don't produce full log callstacks when generating logs
- AssetBundles fail to load when running in Built Players for Mobile Devices
- UI elements with text gets bigger and grey when Player window is moved to another screen with different resolution
- System name accepts multiline text but crops it on confirmation, duplicates input, and shrinks the field when empty
- UI element scale and position are wrong in project build when DRS is changed with HDR and Software Dynamic Resolution enabled
Add comment