Search Issue Tracker

By Design



Found in


Issue ID




[IL2CPP] Application crashes at vdso while creating WeakReference when built with IL2CPP & C++ Compiler Configuration = Debug



To reproduce:
1. Open attached project
2. Make sure player settings are set as below:
Scripting Backend = IL2CPP
C++ Compiler Configuration = Debug
3. Build and run to the device

Actual result: application crashes
Expected result: the application should not crash

Reproduced in:2017.4.29f1; 2018.4.2f1;2019.1.7f1; 2019.2.0b6; 2019.3.0a6

Tested with:
VLNQA00123, Google Pixel 2 XL (Pixel 2 XL), Android 9, CPU: Snapdragon 835 MSM8998, GPU: Adreno (TM) 540
VLNQA00266, Xiaomi Mi A2 (Mi A2), Android 8.1.0, CPU: Snapdragon 660, GPU: Adreno (TM) 512
VLNQA00093, Samsung Galaxy S6 edge (SM-G925F), Android 7.0, CPU: Exynos 7 Octa 7420, GPU: Mali-T760

Note: does not reproduce with Mono Scripting Backend
Note: does not reproduce with C++ Compiler Configuration set to Release or Master
Note: logcat attached

  1. Response avatar

    Resolution Note:

    The code in this case is hitting an unsupported feature in IL2CPP. The script code calls the WeakReference constructor with a second argument of true (this is the trackResurrection parameter). IL2CPP does not support resurrection of WeakReference objects. See the Microsoft documentation for more details:

    Please pass this argument with a value of false to work around this problem.

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.