Commit Graph

2331 Commits

Author SHA1 Message Date
Svetlana Isakova 73c5cb07d8 get rid of 'unwrapFromBlock'
do the logic in 'deparenthesize' method
2013-10-16 20:41:20 +04:00
Svetlana Isakova 6c584fd252 do not add NO_EXPECTED_TYPE as a subtype constraint to constraint system
fixed exception from EA
2013-10-16 20:41:19 +04:00
Svetlana Isakova 0a0f76239f resolve delegated expression always using completer 2013-10-16 19:51:54 +04:00
Svetlana Isakova a455467f9e made delegated property resolver a component
from DelegatedPropertyUtils
2013-10-16 19:51:54 +04:00
Svetlana Isakova 65e2f47bc3 try intersection of upper bounds as a suggestion
not each bound itself
while resolving constraint system
2013-10-16 19:51:53 +04:00
Svetlana Isakova cb25e1d55a if some type parameter has only weak constraints (from bounds), then we consider it as unknown 2013-10-16 19:51:53 +04:00
Svetlana Isakova de85d3df72 KT-4009 Unnecessary attempt to do a smart cast causes an error
#KT-4009 Fixed
  do not add smart casted types for vars to constraint system
2013-10-16 19:51:52 +04:00
Svetlana Isakova 9a0ec7949e fixed bug in constraint system
For parameter type T constraint T? <: Int? should NOT transform to T <: Int, it should be T <: Int?
equality constraint T? = Int? should transform to T <: Int? && T >: Int
2013-10-16 19:51:52 +04:00
Alexander Udalov d4aaed2787 Don't add kotlin-runtime to classpath in CliTest
Also remove testing code from KotlinToJVMBytecodeCompiler, delete code
duplication, etc.
2013-10-16 19:02:46 +04:00
Zalim Bashorov 0877dfc1bd CLI: added "-printArgs" arguments to commandline compiler. 2013-10-16 17:39:49 +04:00
Alexander Udalov cf1a70a28e Minor, group tests related to synthetic methods for properties 2013-10-16 15:04:11 +04:00
Alexander Udalov 08bc67b925 Generate synthetic methods for annotated properties in TImpl classes
Traits themselves can't have these methods, since it'd be a weird public method
in an interface

 #KT-4072 Fixed
2013-10-16 15:02:37 +04:00
Alexander Udalov 5539a29439 Minor, extract method in CodegenTestCase 2013-10-16 14:59:37 +04:00
Alexander Udalov 6269cb807b Minor, extract test for synthetic methods for properties 2013-10-16 14:59:37 +04:00
Alexander Udalov 2445d04338 Fix synthetic method generation for extension properties
If several annotated extension properties with the same name were declared in
one class, JVM issued a ClassFormatError, since we generated a synthetic method
for each of them with the same name and signature. Make the signature of this
synthetic method depend on a receiver parameter, if a property has one
2013-10-16 14:59:37 +04:00
Alexander Udalov 806d264771 Write full synthetic method signature for annotated property
This will be needed to support annotated extension properties, since they have
the same name but different signatures
2013-10-16 14:59:36 +04:00
Alexander Udalov 6e45533065 Deserialize constructors of static nested classes correctly
Similar to what is done in TopDownAnalyzer
 #KT-4081 Fixed
2013-10-15 21:03:52 +04:00
Alexander Udalov d5bd8eebff Add kotlin-runtime.jar to the class loader when invoking compiler
TopLevelMembersInvocationTestGenerated failed locally because the compiler
couldn't find runtime classes
2013-10-15 21:03:52 +04:00
Alexey Sedunov 28b3db53fe Fix irregular PSI structure for classes without body 2013-10-15 18:43:59 +04:00
Andrey Breslav 5b04783ee2 Using Disposer.newDisposable() instead of an anonymous class 2013-10-15 15:28:29 +04:00
Andrey Breslav 1d540181b0 Produciton code uses a shared application between many projects.
Tests always dispose the application together with JetCoreEnvironment
2013-10-15 15:28:28 +04:00
Andrey Breslav f05f3f5686 Let the user know that class object bounds are not supported
KT-4080 Code analisys show all good, but got compile error

#KT-4080 Fixed
2013-10-15 14:45:22 +04:00
Mikhael Bogdanov 6154464050 Test framework fix: Load kotlin test classes in separate class loader 2013-10-14 17:30:27 +04:00
Andrey Breslav d47109b928 Do not write 'jet.volatile' annotation to class files
ProGuard fails when it sees a class named 'volatile'
2013-10-14 14:42:25 +04:00
Alexander Udalov e6259deb8c Minor, use List<File> directly instead of Function0 2013-10-10 20:28:22 +04:00
Alexander Udalov 47ce2f7fe8 Remove binary test data for tests with broken jars 2013-10-10 20:28:22 +04:00
Alexander Udalov 475551f54a Remove binary test data for some tests
Launch CLICompiler instead to compile it
2013-10-10 20:28:22 +04:00
Alexander Udalov c936136341 Refactor CompileKotlinAgainstCustomBinariesTest
Each test now supplies its own classpath producer, which for now finds all jars
in the test data directory, but later will compile them using CLICompiler
2013-10-10 20:28:22 +04:00
Alexander Udalov 1d93ab41d2 Merge two tests with almost the same logic 2013-10-10 20:28:22 +04:00
Alexander Udalov 9e8a8e852c Refactor CompileKotlinAgainstBinariesCustomTest
Extract common logic, add NotNull annotations
2013-10-10 20:28:21 +04:00
Alexander Udalov f8201c6aa9 Refactor TopLevelMembersInvocationTest
Compile library dependencies in the test instead of storing them as jars in the
repository. Reuse MockLibraryUtil, move it from idea tests to compiler-tests
2013-10-10 20:28:21 +04:00
Mikhael Bogdanov d4b84a8809 ScriptCodegen refactoring: unsingleton 2013-10-10 16:17:10 +04:00
Andrey Breslav 1819825e54 "builtins/stubs" mode removed from backend 2013-10-09 19:16:43 +04:00
Andrey Breslav 7123905e96 Support for "builtins/stubs" mode removed from cli 2013-10-09 19:16:43 +04:00
Andrey Breslav 7f46d7555e Do not write "? extends" and "? super" in immediate arguments of supertypes in Java generic signatures 2013-10-08 21:13:30 +04:00
Andrey Breslav 31c14c33e0 WriteSignatureTest is now generated 2013-10-08 21:13:29 +04:00
Andrey Breslav aaac4419d5 Support testing class signatures 2013-10-08 21:13:29 +04:00
Evgeny Gerashchenko 9c38716829 Generating annotations in correct order for methods with synthetic parameters.
#KT-4050 fixed
2013-10-08 16:44:16 +04:00
Evgeny Gerashchenko e401be7ee6 Minor. Clarified terms. 2013-10-08 16:44:16 +04:00
Evgeny Gerashchenko 8e39499a9f Green code. 2013-10-08 16:44:16 +04:00
Alexey Sedunov c943b4e9d5 Add proper annotations for Android SDK 2013-10-07 17:45:02 +04:00
Andrey Breslav 00c3156b59 Use Unit instead of Void 2013-10-05 16:59:57 +04:00
Andrey Breslav 2e585f88a3 ReenteringLazyValueComputationException & co moved to frontend 2013-10-05 16:59:57 +04:00
Andrey Breslav 0765e89b19 Weakly retained memoized functions moved out of util.runtime 2013-10-05 16:59:57 +04:00
Andrey Breslav 239ca9728d StorageManager API does not use Computable and Function and more 2013-10-05 16:59:57 +04:00
Andrey Breslav 7d1c46ed2c Getting rid of Computable and Function in lazy values and memoized functions 2013-10-05 16:59:56 +04:00
Alexander Udalov bee32b8138 Delete useless method from NamespaceCodegen
It was already present in PackageClassUtils
2013-10-04 18:32:40 +04:00
Alexander Udalov 45bc7c2926 Delete JvmClassName.byClass, refactor JvmAnnotationNames
Store constant class names as instances of FqName instead of JvmClassName. This
is done to minimize usages of the method 'JvmClassName.getFqName()', since it's
wrong and shouldn't be used
2013-10-04 18:32:39 +04:00
Alexander Udalov 54db0e30c0 Delete signature name from JvmClassName 2013-10-04 18:32:39 +04:00
Alexander Udalov 7fa39eb41b Delete InjectorForJDR.getPsiClassFinder()
Replace its usages by getJavaClassFinder(). Remove code duplication in
AnalyzerFacadeForJVM/LazyResolveTestUtil
2013-10-04 18:32:38 +04:00