Search Issue Tracker
Fixed in 5.2.4
Votes
0
Found in
5.2.2p4
Issue ID
745691
Regression
No
[IL2CPP] Incorrect result returned by an arithmetic expression byte + int + (expression with ?: operator)
Reproduction steps:
1. Open attached project "AssignmentBug"
2. Build scene "Demo" with IL2CPP
--- In the console you will see "TEST: 44, 300, 400, 300"
--- It should actually print (and does print with Mono) "TEST: 300, 300, 400, 300"
This code generates incorrect value:
byte b = 100;
int i = 200;
bool CarryFlag = false;
var newValue = b + i + (CarryFlag ? 1 : 0);
After executing this code newValue will be set to 44.
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Crash on ShaderLab::ShaderState::ApplyShaderState when entering Play Mode and calling ShaderWarmup.WarmupShaderFromCollection with a shader that has dynamic_branch
- Crash on operator delete[] when a serializable structure in the System namespace is serialized by a MonoBehaviour
- [macOS] forward and backward mouse buttons are recognized as middle mouse button
- NavMeshModifier.OnEnable/OnDisable gets progressively slower when called repeatedly
- "System.Net.CookieContainer" throws an "ArgumentException" error when using a non-UTF-8 machine locale and hostname
Add comment