Commit Graph

30113 Commits

Author SHA1 Message Date
Alexander Udalov f82ec6711d Remove SerializedResourcePaths and BuiltInsSerializedResourcePaths
Most of members now only make sense for JS, move the rest to
BuiltInSerializerProtocol
2016-02-26 11:29:10 +03:00
Alexander Udalov 4bacabe354 Don't read old built-in files in decompiler 2016-02-26 11:29:10 +03:00
Alexander Udalov 996c5848c2 Simplify deserialization components for built-ins and JS 2016-02-26 11:29:10 +03:00
Alexander Udalov f130755972 Use new built-in binary format (.kotlin_builtins files) in IDE
Instead of .kotlin_class and .kotlin_package files, .kotlin_builtins files are
now supported: they are decompiled to a long file consisting of all non-real
classes (those which do not also have .class files) and members in the
corresponding package.

Unlike the old files, .kotlin_builtins files have a binary version in the
beginning, which allows us to skip decompilation and stub building in case the
file has an unsupported version. This could previously lead to exceptions, see
KT-11077, EA-79339.

The change in DecompiledTextFactory is needed because without "defined in ..."
the keys for members in the long decompiled file are not unique, as there are
multiple members with exactly the same signatures in different classes (e.g.
arithmetic operations in primitive classes).

Remove testData files with the decompiled text and stubs of built-in symbols
because now that the whole package is decompiled to a single file, it would be
painful to update these files each time something in built-in sources changes

 #KT-11077 Fixed
2016-02-26 11:29:10 +03:00
Alexander Udalov cb490dbe4f Minor, add BuiltInsBinaryVersion.readFrom(InputStream) 2016-02-26 11:29:10 +03:00
Alexander Udalov c81d76414f Drop serialization of old binary built-in files (.kotlin_class, .kotlin_package) 2016-02-26 11:29:10 +03:00
Ilya Chernikov c39cec4869 Fixing daemon memory test on windows by increasing the expected threshold 2016-02-26 10:23:37 +03:00
Ilya Gorbunov 029b918ec9 Another CharSequence.repeat implementation in JS from polyfill of String.repeat.
#KT-3064
2016-02-26 01:26:05 +03:00
Ilya Gorbunov f564adfdd4 Optimize trivial cases of CharSequence.repeat. Provide CharSequence.repeat for JS.
#KT-3064 Fixed
2016-02-26 01:23:30 +03:00
Stanislav Erokhin 7a43d62408 Move sources to resolution module 2016-02-26 00:39:37 +03:00
Stanislav Erokhin 5bb1f3b2ea Create resolution module. 2016-02-26 00:39:37 +03:00
Stanislav Erokhin 310c68f633 Removed lock level WRITING from LexicalWritableScope. 2016-02-26 00:39:36 +03:00
Stanislav Erokhin f85abed6e6 Replace RedeclarationHandler by LocalRedeclarationChecker 2016-02-26 00:39:35 +03:00
Ilya Gorbunov 7d32fad063 Improve docs for trimIndent/trimMargin.
#KT-9786
2016-02-25 22:09:15 +03:00
Ilya Gorbunov 77f148bec6 Improve docs for substring/subsequence. 2016-02-25 22:09:14 +03:00
Ilya Gorbunov c946d283ff Fix example for Throws annotations.
Improve code escaping and wording for JvmSuppressWildcards.
2016-02-25 22:09:14 +03:00
Ilya Gorbunov a100ffd66b Minor: improve wording in the deprecation message. 2016-02-25 21:16:45 +03:00
Alexander Udalov 71170d32cb Exclude kotlin.reflect.jvm.internal.impl from import and completion in project 2016-02-25 20:30:00 +03:00
Nikolay Krasko edb684fee0 Print kotlin compiler version in build script where withKotlin tag is used 2016-02-25 18:49:53 +03:00
Michael Bogdanov 1b94904684 Prohibited @Strictfp annotation on classes (it's not supported yet), Fix for KT-11109: Strictfp annotation do nothing when applied to class
#KT-11109 Fixed
2016-02-25 18:07:51 +03:00
Natalia Ukhorskaya 894c11d412 Merge pull request #820 from JakeWharton/jw/extra-source-folders
Include source folders from registered source-generating tasks.
2016-02-25 12:07:20 +03:00
Denis Zharkov fe7393dc1a Fix testData 2016-02-25 11:15:18 +03:00
Denis Zharkov 4c88e2a0bc Use original descriptor when mapping fake override
Otherwise wrong CONFLICTING_INHERITED_JVM_DECLARATIONS were reported

 #KT-10691 Fixed
2016-02-25 11:10:48 +03:00
Michael Bogdanov 582b1c5e66 Fix for KT-11163: Incorrect codegen in case of custom compareTo on primitives
#KT-11163 Fixed
2016-02-25 10:16:09 +03:00
Denis Zharkov 36e84ff23a Minor. Add tests for obsolete issues
#KT-8900 Obsolete
 #KT-8901 Obsolete
2016-02-25 08:31:58 +03:00
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
Denis Zharkov 2f4b8dab25 Minor. Replace 'filter' with 'any' 2016-02-25 08:31:19 +03:00
Stanislav Erokhin 226e690a86 Minor. refactoring in Qualifier. 2016-02-24 19:33:10 +03:00
Stanislav Erokhin f130de2468 Remove scope from Qualifier 2016-02-24 19:33:10 +03:00
Stanislav Erokhin 4b3c6d52ef Remake QualifierReceiver 2016-02-24 19:33:09 +03:00
Stanislav Erokhin 8c5339cccf Minor. Remove class ClassifierQualifier and create special ClassValueReceiver 2016-02-24 19:33:09 +03:00
Stanislav Erokhin 2f0ae6f176 Minor. Remove name from Qualifier. 2016-02-24 19:33:08 +03:00
Stanislav Erokhin 5240233eda Minor. Remove HIDDEN_ANNOTATION_FQ_NAME. 2016-02-24 19:33:08 +03:00
Stanislav Erokhin 6a1664c1b3 Minor. removed explicitExtensionReceiverForInvoke from CallCandidateResolutionContext. 2016-02-24 19:33:07 +03:00
Stanislav Erokhin 1ef4a958fd Minor. removed call checked from ResolutionContext. 2016-02-24 19:33:07 +03:00
Stanislav Erokhin 6591f8a2ab Minor. removed unused method from AdditionalTypeChecker. 2016-02-24 19:33:06 +03:00
Stanislav Erokhin 24829ee3ac Minor. rename 2016-02-24 19:33:06 +03:00
Stanislav Erokhin 665e13e4ec Remove obsolete code about warnings for expressions which can be null in java(has @Nullable annotation in java) and in kotlin not marked nullable.
After introducing flexible types and signature enhancement there is no more such expressions.
2016-02-24 19:33:05 +03:00
Michael Bogdanov b20f49a2c4 Default body compilation for inline fun extracted from InlineCodegen to separate one 2016-02-24 14:06:29 +03:00
Michael Bogdanov f149f16882 Separately process inline function default impl body compilation (non general inline magic),
Fix for KT-10670 Debugger: Evaluate Expression/Watches fail for inline function parameter initialized with default value

 #KT-10670 Fixed
2016-02-24 14:06:29 +03:00
Michael Bogdanov 7bfb5a0c60 InliningInstructionAdapter refactoring: renamed to MethodBodyVisitor, added additional empty owerrides 2016-02-24 14:06:28 +03:00
Dmitry Jemerov 54de48604d Merge pull request #824 from cypressious/setter_smart_enter
Implement Smart Enter for Property Setters #KT-9996
2016-02-24 11:27:39 +01:00
Kirill Rakhman f3e68fdeaa Implement smart enter processors for property setter with tests
Fixes #KT-9996
2016-02-23 17:01:02 +01:00
Kirill Rakhman c1a2570dd4 replace null checks with elvis operator 2016-02-23 16:35:12 +01: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 3c35395cf7 Minor: refactor some tests to use nested classes. 2016-02-21 04:18:11 +03:00
Ilya Gorbunov 7997aea5c3 Make Destructured nested class of MatchResult interface in JS too. 2016-02-21 04:18:09 +03:00
Ilya Gorbunov acc6cc539a Mark CollectionAssertions as deprecated due to their experimental status. 2016-02-21 03:33:12 +03:00
Ilya Gorbunov bf536afe5f Mark reified assertFailsWith with InlineOnly to preserve stack traces. 2016-02-21 03:20:07 +03:00
Ilya Gorbunov 119eceb80b Minor: correct file name 2016-02-21 03:20:05 +03:00