Search Issue Tracker

Not Reproducible

Votes

1

Found in

2018.3.0f2

Issue ID

1114381

Regression

Yes

IL2CPP generated code calls "try-catch-finally" incorrectly creating wrong call flow

IL2CPP

-

-

Priority: 2Necessary for shipping a final release

-

Severity: 2Core functionality majorly impacted

Steps to reproduce:
1. Open 'trycatchfinal' project
2. Build for Android with IL2CPP
3. Inspect the logcat

Expected result: Finally block should be called only after while loop finishes.
Current result: Finally block is called every iteration of while loop.

Reproduced with: 2018.3.0a1, 2018.3.2f1, 2019.1.0a1, 2019.1.0a7, 2019.1.0a12, 2019.1.0a13, 2019.2.0a1
Doesn't reproduce with: 2017.4.18f1, 2019.1.0a14
Regressed in: 2018.3.0a1, 2019.2.0a1

Devices under test:
VLNQA00022, Xiaomi Redmi Note 3 (Redmi Note 3), 5.1.1, CPU: Snapdragon 617 MSM8952, GPU: Adreno (TM) 510

Expected output (Editor, Android(mono)):
Loop Start 0
Inner Try
Loop Start 1
Inner Try
Loop Start 2
Inner Try
Loop Start 3
Inner Try
Loop Start 4
Breaking
Outer Finally

Current output (Android(IL2CPP)):
Loop Start 0
Inner Try
Outer Finally
Loop Start 1
Inner Try
Outer Finally
Loop Start 2
Inner Try
Outer Finally
Loop Start 3
Inner Try
Outer Finally
Loop Start 4
Breaking
Outer Finally

All about bugs

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