Mikhail Glukhikh
8f2a3e9d5f
Fixed DFA for the last assignment / initialization in block. A relevant test. #KT-7599 Fixed.
2015-04-28 15:16:39 +03:00
Mikhail Glukhikh
60fdfb8441
Bug fix: DataFlowInfo.getCompleteTypeInfo (with a test)
2015-04-28 15:16:36 +03:00
Dmitry Jemerov
683d727c72
drop deprecated syntax for class objects
2015-04-27 15:14:33 +02:00
Svetlana Isakova
4f0d541493
Resolve function references independently of target type
...
KT-7564 AbstractDiagnosticsTest.checkAllResolvedCallsAreCompleted() fails on tests with function references
#KT-7564 Fixed
2015-04-27 13:32:47 +03:00
Michael Bogdanov
39fabda611
New diagnostic for Java default method call via super in trait
2015-04-24 18:54:09 +03:00
Ilya Ryzhenkov
288e1baa87
Tests, messages and infra for deprecated symbol reporting
2015-04-24 15:44:32 +03:00
Ilya Ryzhenkov
c2b3bcc95f
SymbolUsageValidator infrastructure
2015-04-24 15:44:28 +03:00
Mikhail Glukhikh
525b9e63ae
Refactoring: checkType && checkImplicitCast returned to DataFlowUtils, PROCESSED unboxing returned, StringTemplateVisitor made local
2015-04-23 18:25:52 +03:00
Denis Zharkov
1b42e2fdcc
Deprecate calls of annotations' methods
2015-04-23 08:27:43 +03:00
Denis Zharkov
6ca7d2aad7
Regenerate test data
...
Add properties for Java annotations
2015-04-23 08:27:41 +03:00
Mikhail Glukhikh
27625b04e1
Refactoring of JetTypeInfo / BindingContext. Loop data flow analysis corrected.
...
Now BindingContext includes expression type info instead of jump out possible, data flow info and expression type.
getType() was added into BindingContext, getType() and recordType() were added into BindingTrace.
JetTypeInfo now includes also jump possible flag and jump point data flow info.
Old TypeInfoWithJumpInfo deleted.
TypeInfoFactory introduced to create JetTypeInfo instances.
A pack of extra tests for break / continue in loops added.
2015-04-21 15:29:07 +03:00
Dmitry Jemerov
14b92404cd
add test for private-to-this visibility in traits
2015-04-21 14:13:30 +02:00
Dmitry Jemerov
8d922dda4d
private members of traits are not open by default
...
#KT-4171 Fixed
2015-04-21 14:13:29 +02:00
Alexander Udalov
6f8694976d
Fix test data
2015-04-20 23:30:05 +03:00
Denis Zharkov
7325a459e5
Ignore diagnostic on tests supposed to be dropped soon
2015-04-17 18:52:16 +03:00
Denis Zharkov
f53baebf89
Show warning on usages of javaClass<T>() in annotations loaded from Java
2015-04-17 18:50:37 +03:00
Denis Zharkov
482b4e3688
Minor, split and clean tests
...
Tests that are using javaClass supposed to be deleted soon
while other ones just check that annotation loaded correctly
and shold use class literals
2015-04-17 17:40:41 +03:00
Svetlana Isakova
d40fd440b0
KT-7433 Type inference pushes Unit inside generic function with lower bound constraint
...
#KT-7433 Fixed
#KT-7351 Fixed
2015-04-16 21:02:42 +03:00
Mikhail Glukhikh
109e0abb6d
Review fixes for mutable variable smart casting (mostly refactoring).
...
DataFlowValue.isPredictable() introduced instead of isStableIdentifier().
Parenthesized assignments are treated correctly.
2015-04-16 20:11:03 +03:00
Mikhail Glukhikh
e97e792674
Review fixes for smart casts in / out loops.
...
LoopTypeInfo became TypeInfoWithJumpInfo rewritten in Kotlin.
Fixed a bug with break inside Elvis inside a loop, a pack of related tests added.
isTrueConstant moved to JetPsiUtil.
2015-04-16 20:11:01 +03:00
Mikhail Glukhikh
d5aed62410
Smart casts for local variables not captured in a closure and not changed in a loop, see #KT-3175.
...
isLocalVariable added. Assignment / initialization analysis.
Control whether a variable is changed in a loop at the beginning and at the end of the loop.
Control whether a variable is captured in a closure. #KT-3175 Fixed. #KT-2266 Fixed.
Tests for variable null safety and for variables is/as operations.
Loop / closure / variable property tests are included.
Old tests changed in accordance with KT-3175. In particular, all three of testSmartcastImpossible were fixed.
2015-04-16 20:10:58 +03:00
Denis Zharkov
97e4a899cf
Add specific warning when KClass literal expected
2015-04-16 10:40:20 +03:00
Denis Zharkov
98ffa3b475
Render Class-constant as javaClass<T>()
2015-04-16 10:40:20 +03:00
Denis Zharkov
294eb1dceb
Load annotation parameter's type for ctr as contravariant
...
See comment in code
2015-04-16 10:40:20 +03:00
Denis Zharkov
8f0e290dec
Create additional constructor for java annotation with Class-parameter
...
One of them with KClass<*> parameters and other with java.lang.Class<*>.
It's needed just for backward compatibility, and second one is deprecared.
2015-04-16 10:40:20 +03:00
Denis Zharkov
f5111180c3
Load Class<?> as KClass<*> for Java annotations parameters
2015-04-16 10:40:20 +03:00
Denis Zharkov
82674e56b9
Frontend: Allow using KClass as annotation parameter type
2015-04-16 10:40:19 +03:00
Ilya Gorbunov
a20f1bdb6e
Change the expected diagnostic output after reduce signature has been changed.
2015-04-15 17:34:09 +03:00
Mikhail Glukhikh
1544755838
Test refactoring
2015-04-14 19:11:26 +03:00
Mikhail Glukhikh
8184bccda1
Extended loop data flow analysis was implemented. #KT-6283 Fixed. #KT-6284 Fixed.
...
A local descendant of JetTypeInfo added to save separately current data flow info and jump point data flow info together with jump opportunity.
Now data flow analysis know about loop bodies that must be executed at least once (do...while, while(true) until the first break/continue).
A set of tests for smart casts in and after loops.
Existing DoWhile and WhileTrue resolve tests corrected in accordance.
2015-04-14 19:11:22 +03:00
Dmitry Jemerov
900a16a315
deprecate required classes for traits
2015-04-13 16:22:22 +03:00
Dmitry Jemerov
991db29731
drop covariant specialisation for supertypes
2015-04-13 15:28:50 +03:00
Alexander Udalov
92fa107471
Delete three diagnostic tests which rendered parts of JRE
...
- PackageLocalClassNotImportedWithDefaultImport.kt goes to codegen multi-file
tests. File in java.lang moved to kotlin.jvm, which seems irrelevant to the
test, because java.lang is prohibited by the VM
- MergePackagesWithJava.kt (KT-689, Java and Kotlin in the same package) and
kt955.kt (Unable to import from default package) are considered too obsolete
to even test and are thus deleted
Also check that there's no more than 1000 lines in the .txt file in diagnostic
tests.
2015-04-10 20:35:18 +03:00
Michael Bogdanov
67c2f7105b
Fix for KT-6863: Internal compiler error folding functions
...
#KT-6863 Fixed
2015-04-10 08:59:27 +03:00
Alexander Udalov
6182b3ff5c
Prohibit Array::class, require type arguments for reified parameters
2015-04-09 19:46:47 +03:00
Evgeny Gerashchenko
eeeb741d42
Added test for obsolete bug and removed workaround in code.
2015-04-08 15:14:16 +03:00
Denis Zharkov
1324667bc9
Prohibit use of positioned value arguments for java annotation
2015-04-07 19:31:30 +03:00
Denis Zharkov
a29c0ff9a3
Use default value if annotation vararg argument is empty
2015-04-07 19:31:30 +03:00
Denis Zharkov
9b1443954f
Refine loading annotation parameters from java
...
- Parameter named `value` is always first
- Array parameter represented as vararg iff its name is `value` and all
other parameters have default values
#KT-2576 Fixed
#KT-6641 Fixed
#KT-6220 Fixed
#KT-6652 Fixed
2015-04-07 19:31:29 +03:00
Mikhail Glukhikh
27b1f1ddad
Test and implementation for KT-6819. Now when entry condition data flow information is used for subsequent conditions. #KT-6819 Fixed
2015-04-07 19:03:34 +03:00
Mikhail Glukhikh
cd206fc97b
Test for KT-3711. Passes already in M11 or even earlier
2015-04-07 19:03:31 +03:00
Mikhail Glukhikh
221501c0d9
Tests for KT-2865. Passes already in M11 or even earlier
2015-04-07 19:03:29 +03:00
Mikhail Glukhikh
39e01f4df2
Tests for KT-3899. Passes already in M11 or even earlier
2015-04-07 19:03:27 +03:00
Mikhail Glukhikh
f49c79f4f0
Tests for KT-3224 and KT-3244. Both pass already in M11 or even earlier
2015-04-07 19:03:24 +03:00
Nikolay Krasko
2946c1d6a8
KT-7271 Accessing an extension property of Char.Companion leads to ClassNotFoundException in runtime
...
#KT-7271 Fixed
2015-04-07 15:59:05 +03:00
Mikhail Glukhikh
88441814b9
Test for KT-5502 (works after KT-4450 / KT-5907 fix)
2015-04-06 18:32:19 +03:00
Mikhail Glukhikh
d92ccad35d
Implementation and tests for KT-5840 and newly created KT-7204. Now a safe call provides not-null receiver state *inside* argument list. It works also for ?. chains. #KT-5840 Fixed.
...
On the other hand, argument states do not propagate to successor statements for a safe call. #KT-7204 Fixed. A few additional comments.
2015-04-06 18:29:52 +03:00
Dmitry Jemerov
252c4118eb
report 'break' and 'continue' inside 'when' as errors (even if 'when' is nested in a loop)
2015-04-05 00:33:14 +03:00
Alexander Udalov
4474005183
Fix codegen tests and overloads diagnostic test
2015-04-03 01:38:31 +03:00
Dmitry Jemerov
7b507276ed
frontend diagnostics for kotlin.jvm.overloads
...
#KT-7203 Fixed
2015-04-02 20:30:36 +02:00