Denis Zharkov
914447b7eb
Do not treat uninitialized value as a reason to retain boxing
...
See testData/simpleUnitializedMerge.kt
On exit from `if` we merge value in variable with slot 1 (x):
- from `if` body we get BoxedBasicValue
- from outer block we get UNITIALIZED_VALUE
So we just suppose `x` is unitialized after `if`
and there's no need to mark BoxedValue as unsafe to remove
because it's anyway can't be used after `if`
#KT-6842 Fixed
2016-02-25 08:31:19 +03:00
Alexander Udalov
c71c344b8a
Fix NCDFE on primitive iterators during boxing optimization
...
The real fix is in ProgressionIteratorBasicValue's constructor, other changes
are refactorings
#KT-11153 Fixed
2016-02-22 19:49:39 +03:00
Ilya Gorbunov
4d5ec9be3f
Drop identityEquals from builtins, compiler and tests.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
25c4453dc5
Cleanup deprecated symbol usages in testData
2016-01-22 05:54:38 +03:00
Dmitry Jemerov
1523d5bcbf
removing static type assertions work in progress
2015-10-12 11:11:23 +02:00
Ilya Gorbunov
70cc7fbf1f
Remove never intentionally used String.hashCode extension.
2015-04-07 03:14:49 +03:00
Denis Zharkov
ec63394121
Check that boxing instruction is simple call
...
like T.valueOf(unboxType(T))
#KT-6047 fixed
2014-10-17 01:22:25 +04:00
Denis Zharkov
35cda83c8f
Refined merging logic #KT-5844 Fixed
...
If merging primitives of different integral types (e.g. I and Z) return
INT.
Else return UNINITIALIZED_VALUE
2014-09-26 12:37:04 +04:00
Denis Zharkov
e0ced7cbcf
Boxing values merge fix. #KT-5588 Fixed
...
When merging Boxed value and something else just return MIXED_VALUE
2014-08-05 13:54:42 +04:00
Denis Zharkov
0b2b8ba816
Fixed KT-5493: NPE fix
2014-07-17 18:43:44 +04:00
Denis Zharkov
0f5e29df9b
tests added
2014-07-15 21:26:53 +04:00