Search Issue Tracker
Fixed in Unity 5.2.4
[IL2CPP] Incorrect result returned by an arithmetic expression byte + int + (expression with ?: operator)
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.
- [Prefab] Duplicating nested prefabs children does not maintain transform
- Modifying "Image.sprite" of an existing Image, deforms it
- [Timeline] Deleting an "Animation Track" that points to the same Animator, breaks Custom Track preview
- [HDRP] The Camera's Color buffer is no longer accessible in the VFX Graph
- Two incompatible components can be added to a GameObject when using the Prefab Mode