Commit Graph

1040 Commits

Author SHA1 Message Date
Evgeny Gerashchenko 000fc55035 Added intrinsic properties of ranges and sequences. 2013-01-29 22:55:06 +04:00
Evgeny Gerashchenko c8a194c0a8 Dropped *Range.isReversed 2013-01-29 22:55:04 +04:00
Evgeny Gerashchenko eb8107115d Moved IntRange.count to Ranges class. 2013-01-29 22:55:03 +04:00
Alexander Udalov 9007a6214a Fix closure's reference to outer closure
#KT-3276 Fixed
2013-01-29 22:41:58 +04:00
Evgeny Gerashchenko 52b7ee6447 Happy new year 2013! 2013-01-28 18:58:08 +04:00
Natalia.Ukhorskaya e37cb461f6 Support visibility for protected static members
#KT-2999 Fixed
2013-01-24 18:43:37 +04:00
Andrey Breslav f84d00eec9 Kotlin classes always have a signature 2013-01-23 20:12:48 +04:00
Andrey Breslav 56acd57e73 KT-3267 Put binary format version into the generated class files
#KT-3267 Fixed
2013-01-23 20:12:47 +04:00
Andrey Breslav a7531926a4 Properly compute STATIC for light classes 2013-01-23 18:54:04 +04:00
Andrey Breslav e1831877b7 GenerationStrategy removed 2013-01-23 18:54:03 +04:00
Andrey Breslav 1671015466 Visibility of nested light classes fixed 2013-01-23 13:10:35 +04:00
Andrey Breslav aa39519323 Using isTopLevelDeclaration instaed of a direct instanceof check 2013-01-23 13:10:35 +04:00
Andrey Breslav a089054b1a @NotNull added 2013-01-23 13:10:35 +04:00
Andrey Breslav 73f8fdb474 Package classes are final 2013-01-23 13:10:34 +04:00
Alexander Udalov ab730b7dd5 Fix CompareTo intrinsic behavior in no-dot syntax 2013-01-22 19:49:10 +04:00
Nikolay Krasko a6c4a36ce5 Remove warnings 2013-01-22 15:53:37 +04:00
Alexander Udalov c4a3963925 Fix nested classes codegen bug
When constructing a closure, codegen in some cases incorrectly determined if
it needed to store a reference from a nested class to the outer
2013-01-18 14:59:27 +04:00
Alexander Udalov cc5ba53c80 Support inner/nested classes in JVM back-end
#KT-1174 In Progress
2013-01-16 23:11:48 +04:00
Alexander Udalov b612989eb0 Remove 'inner enum' hack & fix Java inner class resolve
Inner enum was placed into the class object of the outer class. Remove the
hack from frontend, frontend.java & backend. Fix tests

 #KT-1174 In Progress
2013-01-16 23:11:47 +04:00
Alexander Udalov e76abcb625 Add ClassDescriptor.isInner()
Implement in resolve & lazy resolve; place a stub in resolve-java

 #KT-1174 In Progress
2013-01-16 23:11:40 +04:00
Natalia.Ukhorskaya 37b12bff2e Vararg in constructor isn't loaded correctly from bytecode
#KT-3251 Fixed
2013-01-16 17:59:35 +04:00
Natalia.Ukhorskaya 65f1efb921 Add JetPackageClass annotation 2013-01-15 19:45:07 +04:00
Natalia.Ukhorskaya 47abdcf565 Rename namespace class to {package.name}Package
Conflicts:

	compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java
2013-01-15 19:45:06 +04:00
Andrey Breslav b039c69952 Class object members supported in PsiCodegenPredictor 2013-01-15 15:32:03 +04:00
Andrey Breslav 6f8c9bf0d1 JetClass.isEnum() introduced 2013-01-14 20:20:27 +04:00
Andrey Breslav a577ccabab Light class providers unified 2013-01-14 20:20:22 +04:00
Andrey Breslav 69080b72af When generating light class for package, do not generate other classes 2013-01-14 20:20:21 +04:00
Andrey Breslav a91b113cc3 GenerationStrategy is now a strategy 2013-01-14 20:20:20 +04:00
Andrey Breslav 26ccb80abb Missing @NotNull and assertions added 2013-01-14 20:20:17 +04:00
Andrey Breslav e69b9af6d1 Unused parameter removed 2013-01-14 20:20:11 +04:00
Andrey Breslav 6f38388409 Unused line removed 2013-01-14 20:20:11 +04:00
Andrey Breslav 380c8b596a The slow (synchronized) java.util.Stack replaced by com.intellij.util.containers.Stack 2013-01-14 20:20:10 +04:00
Andrey Breslav b5aa44ae49 GenerationState is constructed with BindingContext, not full AnalyzeExhaust 2013-01-14 15:19:50 +04:00
Alexander Udalov 4cebd3f75b Fix last if-statement in block codegen
#KT-3203 Fixed
2013-01-10 14:05:28 +04:00
Alexander Udalov 0fea6822c3 Fix codegen of loaded class objects
Remove useless check and todo.

 #KT-2717 Fixed
 #KT-3142 Fixed
2013-01-09 15:40:21 +04:00
Evgeny Gerashchenko e03eaf6dde Removed @author javadocs from code. 2012-12-28 17:44:31 +04:00
Natalia.Ukhorskaya e9d1171d6d Fix VerifyError for enum constructor with default arguments 2012-12-27 12:29:09 +04:00
Natalia.Ukhorskaya 808c5abc0f Generate constructor without parameters if primary constructor has only parameters with default values
#KT-3085 Fixed
2012-12-27 12:29:06 +04:00
Natalia.Ukhorskaya f4a44155d9 Extract method 2012-12-27 12:29:02 +04:00
Natalia.Ukhorskaya 538aa869b4 Constructor with default arguments for inner class
#KT-2852 Fixed
2012-12-27 12:29:01 +04:00
Evgeny Gerashchenko e3a30b10a9 Not writing fake parameters of enum constructors to generic signature. 2012-12-25 15:20:57 +04:00
Evgeny Gerashchenko 1cfc5f366e Extracted DescriptorRenderer interface. 2012-12-17 16:35:59 +04:00
Evgeny Gerashchenko 8a946c6ef9 Renamed DescriptorRenderer and moved to 'renderer' package.
Moved DescriptorRendererTest to 'renderer' package, as well.
2012-12-17 16:35:56 +04:00
Evgeny Gerashchenko b8eb0c84ff Added 'synthetic' flag for bridge method.
#KT-3155 fixed
2012-12-13 14:36:41 +04:00
Natalia.Ukhorskaya a739964c74 Back-end: write correct visibility flags for private inner classes 2012-12-06 17:25:13 +04:00
Natalia.Ukhorskaya 17fa105116 Generate INVOKESPECIAL instruction for private method with default argument 2012-12-06 15:20:43 +04:00
Alexander Udalov fd0251729b Optimize primitive comparison operators codegen
They're no longer generated via intrinsics
2012-11-28 20:58:59 +04:00
Alexander Udalov fad9169005 Remove suspicious code from intrinsics 2012-11-28 20:17:01 +04:00
Alexander Udalov c9bdfd2f07 Generate compareTo() properly
Take into account:
1) resolved call to compareTo (instead of always calling Comparable's method)
2) types of both caller and callee, when primitive, to avoid wrong casting
(instead of always using caller's type)

 #KT-3078 Fixed
2012-11-28 17:45:38 +04:00
Alexander Udalov 0c5960922a Refactor StackValue.coerce() 2012-11-28 17:41:38 +04:00