Commit Graph

12410 Commits

Author SHA1 Message Date
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
Alexander Udalov 65b098b327 Minor, remove unchecked casts from JavaElement collection util 2013-10-15 20:34:45 +04:00
Alexander Udalov 1fdb86f733 JavaArrayAnnotationArgument.getElements() returns List 2013-10-15 20:34:44 +04:00
Alexander Udalov 5b916ea108 Type parameters/arguments constitute lists, not collections 2013-10-15 20:34:44 +04:00
Alexander Udalov 0958e63be2 JavaMethod.getValueParameters() returns List 2013-10-15 20:22:59 +04:00
Andrey Breslav d52f2e25b0 AnnotationDescriptor interface extracted 2013-10-15 19:54:39 +04:00
Alexey Sedunov 71a0d4cc45 KT-4018 When moving members move comments too 2013-10-15 18:44:00 +04:00
Alexey Sedunov 28b3db53fe Fix irregular PSI structure for classes without body 2013-10-15 18:43:59 +04:00
Alexey Sedunov bdc908d45f Fix search of package-level function/property usages in Java code 2013-10-15 18:43:57 +04:00
Andrey Breslav 60c9aa559b Fix compilation in KDoc tests 2013-10-15 17:37:53 +04:00
Andrey Breslav 5b04783ee2 Using Disposer.newDisposable() instead of an anonymous class 2013-10-15 15:28:29 +04:00
Andrey Breslav 6384090034 Use reference counting to dispose the application when needed 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 e8142d6464 Extract method: initApplication 2013-10-15 15:01:35 +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
Nikolay Krasko 7d7352954e Fix absence of highlighting for 'as', 'in', 'is' keywords 2013-10-14 16:15:31 +04:00
Andrey Breslav 5175b8444f Build a special compiler jar for maven that contains the runtime as well 2013-10-14 14:42:26 +04:00
Andrey Breslav 765cab2283 Downloading OS-specific build of IDEA and set +x permissions 2013-10-14 14:42:25 +04:00
Andrey Breslav 6d840d4b48 Rename 2013-10-14 14:42:25 +04:00
Andrey Breslav 48052e99ae Bootstrap runtime used as an external dependency to the compiler 2013-10-14 14:42:25 +04:00
Andrey Breslav 692bdb2999 'runtime' module removed from the artifact 2013-10-14 14:42:25 +04:00
Andrey Breslav cd275fd814 'runtime' module replaced by 'kotlin-runtime' library 2013-10-14 14:42:25 +04:00
Andrey Breslav 00c375b290 Add missing annotation classes 2013-10-14 14:42:25 +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
Andrey Breslav 41180d78e2 Do not fail with NPE if a class is not found in preloader 2013-10-14 14:42:25 +04:00
Andrey Breslav a6b89b8874 Add kotlin-runtime to compiler classpath 2013-10-14 14:42:25 +04:00
Andrey Breslav 60425b15e6 Support circular dependencies
We generate a module script with information on all modules in the chunk, then build the whole chunk as "one big module"
2013-10-14 14:42:24 +04:00
Andrey Breslav d5b08d4f1c Support building many modules "as one": merging all the paths etc
This is for a workaround implementation of support for mutually dependent modules
2013-10-14 14:42:24 +04:00
Alexey Sedunov eff62bfd83 KT-4008 'Replace if with when' is available but does not work 2013-10-11 17:24:07 +04:00
Erokhin Stanislav e05e616158 JS backend: fix StringBuilder append #KT-4064 Fixed 2013-10-11 15:47:43 +04:00
Erokhin Stanislav 768289b913 JS backend: fix class object in trait #KT-4062 Fixed 2013-10-11 14:44:56 +04:00
Alexander Udalov e6259deb8c Minor, use List<File> directly instead of Function0 2013-10-10 20:28:22 +04:00
Alexander Udalov 102ced153c Remove binary test data from completion tests
Delete CompileBinaryTestData script, since there are no tests with binary test
data left in the repository
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
Alexander Udalov a2c74d4324 Refactor OverrideImplementWithLibTest
Use JdkAndMockLibraryProjectDescriptor instead of a jar file, which needs to be
regenerated every time binary format changes
2013-10-10 20:28:21 +04:00
Andrey Breslav 8424e7f5c7 Fix smoke test 2013-10-10 18:59:37 +04:00
Andrey Breslav 4bc0f8280f Rename variable 2013-10-10 17:49:17 +04:00
Andrey Breslav 68e2e9b4fc Ability to direct output of different modules to different directories 2013-10-10 17:49:17 +04:00