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

IL2CPP

-

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.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.