Commit Graph

17099 Commits

Author SHA1 Message Date
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
Andrey Breslav b5f43dcc2d Don't let the last tests fail 2013-10-14 08:23:19 +04:00
Andrey Breslav e9edc70758 Straighten out exception handling for CCE/NPE thrown by the eval loop and other exceptions thrown by eval itself 2013-10-14 08:23:19 +04:00
Andrey Breslav 48dec7ec17 Rename 2013-10-14 08:23:19 +04:00
Andrey Breslav f64deaac1d Foreign object can't be compared by equals() to local objects 2013-10-14 08:23:19 +04:00
Andrey Breslav e2b0212c34 NewObjectValue is a legitimate value too 2013-10-14 08:23:19 +04:00
Andrey Breslav e13c331e78 Use throwException() instead of manually created instance 2013-10-14 08:23:19 +04:00
Andrey Breslav 9814726f9d JDI-based tests run, many fail 2013-10-14 08:23:19 +04:00
Andrey Breslav 1c07c42b2c better toString() 2013-10-14 08:23:19 +04:00
Andrey Breslav 848a9c56b2 Better remote exception support 2013-10-14 08:23:19 +04:00
Andrey Breslav 88bb113834 Prevent infinite recursion in loadClass() 2013-10-14 08:23:19 +04:00
Andrey Breslav ec43441190 Generic mechanism for creating test suites 2013-10-13 15:12:26 +04:00
Andrey Breslav 517ccf347c Support arrays 2013-10-13 12:39:13 +04:00
Andrey Breslav 205fe325d9 Support constructor calls 2013-10-13 12:39:13 +04:00
Andrey Breslav a5dba2938d Support instance fields and methods 2013-10-13 12:38:49 +04:00
Andrey Breslav 3e26f205b3 Static method calls supported 2013-10-13 12:38:49 +04:00
Andrey Breslav f17fa36791 JDI-based Eval for classes and static fields 2013-10-13 12:38:39 +04:00
Andrey Breslav 4591363c9e JDI-based values 2013-10-13 01:11:58 +04:00
Andrey Breslav 0923be42ff throwException() utility introduced 2013-10-13 00:59:45 +04:00