Commit Graph

3797 Commits

Author SHA1 Message Date
Denis Zharkov 414d6b92f6 Adjust testData: don't use java.lang.Class in annotations 2015-06-12 09:55:13 +03:00
Denis Zharkov da254ab1a0 Drop support of java.lang.Class as annotation parameter
Also drop some related diagnostics and testData
2015-06-12 09:55:12 +03:00
Denis Zharkov d71fe0d11a Drop JavaClassValue and it's usages
Also drop related testData
2015-06-12 09:55:10 +03:00
Denis Zharkov 9245cfaa7f Load Class-object from java annotated entity as KClass 2015-06-12 09:55:08 +03:00
Denis Zharkov 2e284718ce Revert "Create additional constructor for java annotation with Class-parameter"
This reverts commit 8f0e290dec.
2015-06-12 09:55:06 +03:00
Denis Zharkov 9080b57635 Revert "Load annotation parameter's type for ctr as contravariant"
This reverts commit 294eb1dceb.
2015-06-12 09:55:03 +03:00
Denis Zharkov 2df6fcb785 Drop some tests using java.lang.Class in annotation
We are going to drop such cases anyway, but they're annoying when reverting commits
2015-06-12 09:55:02 +03:00
Denis Zharkov cf4b1ab7cd Drop obsolete annotations syntax 2015-06-12 09:55:00 +03:00
Denis Zharkov 26864a4407 Get rid of annotation syntax deprecation related things 2015-06-12 09:23:32 +03:00
Denis Zharkov c9f79c2d05 Adjust testData: get rid of obsolete annotations 2015-06-12 09:23:31 +03:00
Denis Zharkov cdba1c2dbe Parsing: allow accessors with '@' annotation on the same line 2015-06-12 09:23:31 +03:00
Michael Nedzelsky 744e760444 tests for KT-7618 Compiling Maven project targeting JS fails when no source file present 2015-06-11 22:21:25 +03:00
Alexey Sedunov e1e1dd9413 Diagnostics: Fix range of DECLARATION_SIGNATURE diagnostics reported on secondary constructors 2015-06-11 13:53:00 +03:00
Alexey Sedunov 1ea2c24562 Light Classes: Primary constructor fixes 2015-06-11 13:52:48 +03:00
Alexey Sedunov 608ce59f15 Resolution: Resolve primary constructor references to primary constructor
itself if it's explicitly present in PSI
2015-06-11 13:52:47 +03:00
Mikhail Glukhikh f9fe8cd341 Fixed annotation resolve for loop parameter or catched exceptions type 2015-06-10 18:38:27 +03:00
Mikhail Glukhikh 731e5d85a4 Annotation arguments resolve refactoring via ForceResolveUtil. Deptecated...Intention fixed accordingly 2015-06-10 18:38:25 +03:00
Alexander Udalov 64b60718e3 Finish off old deprecated function/extension function classes
This reverts commit d14e5b8a72.
2015-06-10 14:41:57 +03:00
Michael Nedzelsky 999c83240c JS: error message (not exception) for incompatible abi version during compilation 2015-06-10 05:37:57 +03:00
Mikhail Glukhikh a792b29a78 Exception fix: more accurate type annotation parsing #EA-69124 Fixed 2015-06-09 14:36:12 +03:00
Pavel V. Talanov 07d35d305e Create import list psi element even if no directives are present
Fix a problem where deleting last import directive via "optimize imports" could lead to incorrect psi structure resulting in CCE, see EA-64291
New imports are inserted at the head (after package directive if present) of the file (before any comments) if no imports were present
Add test for inserting import to file where a first statement is a comment
Drop code dealing with non-existing import list in ImportInsertHelperImpl
AbstractQuickFixTest: check for unexpected actions before changes to the file are made as it relies on the first line having specific format
2015-06-08 20:51:04 +03:00
Pavel V. Talanov 7585cbfe22 Remove check in visibilities that allowed access to privates of outer packages
It doesn't work for a while now in imports and is planned to be dropped with upcoming changes to private
2015-06-08 20:25:52 +03:00
Michael Bogdanov baa44e3d01 Fix default parameter remapping on inlining: support store instruction
#KT-7963 Fixed
2015-06-08 16:07:39 +03:00
Michael Bogdanov 7a1625fc9e Support extension lambda inlining
#KT-7962 Fixed
2015-06-08 16:07:38 +03:00
Alexander Udalov d475401108 Ant task: don't pass kotlin-runtime.jar to javac on "-no-stdlib" 2015-06-05 16:19:55 +03:00
Alexander Udalov f5ec8d6850 Minor, delete useless test
'withKotlinNoJavaSources' tests exactly the same
2015-06-05 16:19:42 +03:00
Alexander Udalov e224337ff3 Ant task: support "compilerarg" element in withKotlin as in kotlinc 2015-06-05 16:19:19 +03:00
Alexander Udalov 0f6c23e1c4 Don't always run code in Ant task tests
But when running code, do it via <java> task, not via custom testing code. Most
of the time the compiled code need not be runned, because it's irrelevant to
the Ant task itself
2015-06-05 15:55:59 +03:00
Alexander Udalov 89408f45bb Ant task: pass kotlin-runtime to javac's classpath; simplify tests
'kotlinCompiler' test is deleted because it's a very roundabout way to compile
Kotlin and Java sources, and there's no point in testing it.

'javacCompiler' test is deleted for similar reasons: using javac's "compiler"
option is not an advertised way to use Kotlin Ant task, and anyway it will work
with any CompilerAdapter instance, so it's hard to break it (apart from
deleting "withKotlin" adapter).

There are tests which check compilation/running of the same code but with the
recommended method. The pretext for deletion of these tests is to make Ant
tests generated, and that would be easier if they wouldn't depend on any outer
variables
2015-06-05 15:55:58 +03:00
Alexander Udalov 0ad6dce7ce Ant task: support 'failOnError' attribute in kotlinc and withKotlin 2015-06-05 15:55:54 +03:00
Alexander Udalov 6d00c265e2 Always run kotlinc in <withKotlin/> Ant task
This change requires withKotlin to be run with Ant of version at least 1.8.2.

Some test data changed because now compileList contains both Java and Kotlin
sources

 #KT-7870 Fixed
2015-06-05 15:55:53 +03:00
Alexander Udalov 9008a8b161 Fix withKotlin Ant task when no classpath is given
#KT-6492 Fixed
2015-06-05 15:55:51 +03:00
Alexander Udalov 6e97f85863 Fix type argument substitution bug in KFunction construction
For example,

KMemberFunction2<T, P1, P2, R> : KMemberFunction<T, R>

So for this inheritance the heuristic that was present ("take the last K type
parameters of the subclass, and substitute for K parameters of the superclass")
was wrong. The new heuristic for this case is: take type parameters with the
same names.

Also don't store "parameters" in a lazy value, since it's easy to compute and
it's computed practically every time anyway
2015-06-04 23:08:21 +03:00
Mikhail Glukhikh 98407a7c4b Recursive annotations are now possible for properties / functions / classes / primary constructors #EA-66984 Fixed #EA-63992 Fixed #EA-64272 Fixed
A set of tests provided.
2015-06-04 20:09:36 +03:00
Evgeny Gerashchenko c194ced87e Performance report is emitted only when corresponding command-line argument is provided. 2015-06-04 19:45:01 +03:00
dnpetrov 50ea67ba13 KT-5524 Support [platformName] annotation for class members
@platformName is now supported for final non-overriding class member functions
(including property accessors).
Front-end provides diagnostics for inapplicable annotation cases.
Code generation updated:
- ignore kotlin.platform.platformName annotation for Java class methods;
- bridges generation generates proper JVM declarations in case of methods renamed with @platformName.
@platformName-related tests added.

#KT-5524 Fixed
2015-06-04 17:54:08 +03:00
Michael Bogdanov dee26957d1 Tests for obsolete KT-4798, KT-7288, KT-7046
#KT-4798 Obsolete
 #KT-7288 Obsolete
 #KT-7046 Obsolete
2015-06-04 16:28:08 +03:00
Denis Zharkov 9802931a90 Remove variables with empty ranges from local vars table
As their ranges may intersect after dead code elimination that leads to VerifyError
2015-06-04 16:11:02 +03:00
Denis Zharkov 8da3f53404 EA-53937: Drop failing assertion about no-name val in annotation 2015-06-04 16:11:02 +03:00
Michael Bogdanov 83f04501be Remove error diagnostic from return in multideclaration
#KT-5100 Fixed
2015-06-04 12:01:59 +03:00
Michael Bogdanov 2377a10007 Fix labeling processing on inlining: suport labeled literals
#KT-7273 Fixed
2015-06-03 14:42:57 +03:00
Pavel V. Talanov f02f663167 Minor: fix test data 2015-06-03 14:29:44 +03:00
Pavel V. Talanov ccaa779e2f Minor: fix test 2015-06-02 19:06:27 +03:00
Alexander Udalov d1df234cfe Support annotations as annotation arguments in reflection, add test
A follow-up to 281acb8 where this was supported in the compiler
2015-06-02 17:31:19 +03:00
Alexander Udalov 158b3ba102 Make parameter names of fictitious function classes non-stable
To be able to change them when overriding invoke in subclasses without a
warning
2015-06-02 17:30:58 +03:00
Pavel V. Talanov d2592e4a2c Companion objects have public visibility by default
#KT-7114 Fixed
2015-06-02 16:23:03 +03:00
Valentin Kipyatkov aefe0dd192 Changed highlighting range and attributes of useless elvis operator 2015-06-02 14:35:19 +03:00
Denis Zharkov 349d5f02ea Drop wrong assertion about duplicating properties in data class
#EA-64269 Fixed
2015-06-02 14:07:49 +03:00
Denis Zharkov 70dbbd8fda Resolve constructors declared in traits and objects
It prevents exceptions and produces less red code

 #EA-68667 Fixed
2015-06-02 14:07:49 +03:00
Denis Zharkov 7f9d2e8a36 Refine diagnostics reported on primary constructors 2015-06-02 14:07:49 +03:00