Commit Graph

1142 Commits

Author SHA1 Message Date
Evgeny Gerashchenko 897854b3dc KT-6671 Report unused constructor parameters
#KT-6671 fixed
2015-01-27 22:38:27 +03:00
Valentin Kipyatkov 4f2ecffee1 Better tests 2015-01-21 20:10:19 +03:00
Valentin Kipyatkov 77a560775f KT-6628 Allow imports of classes from root package
#KT-6628 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov fa779bbdd2 Fixed KT-4085 Usability problem: Can't import protected nested class
#KT-4085 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 974982463c Visible classes take priority when resolving imports with * 2015-01-21 20:10:18 +03:00
Valentin Kipyatkov b9d47ffe7a Changed priority for default imports + default imports include all built-ins explicitly for java module
#KT-4374 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 929d6b885d Current package members to have less priority than explicit imports 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov a9d4fd5213 Moved tests for imports into proper group 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2c60201832 Fixed test data (+ renamed test) 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2e420fc312 Conflicting imports error for imports of classes and packages 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov b888ea601c Changed imports semantics: imports order does not affect resolve, explicit imports have higher priority for classes 2015-01-21 20:10:16 +03:00
Svetlana Isakova 9dbcd8b55f Approximate captured types only when necessary 2015-01-21 15:37:33 +03:00
Alexander Udalov f3b2193afd Delete traces of "jet" in test data and unimportant code 2015-01-13 15:02:16 +03:00
Evgeny Gerashchenko 22f4caa78d Fixed test for KT-6530 Do not report "useless cast" when RHS is unresolved 2015-01-12 21:34:12 +03:00
Evgeny Gerashchenko c64cb06180 KT-6530 Do not report "useless cast" when RHS is unresolved
#KT-6530 fixed
2015-01-12 19:26:44 +03:00
Alexander Udalov 3bde619ca3 Add test for obsolete issue
#KT-4434 Obsolete
2014-12-29 18:00:17 +03:00
Alexander Udalov 91754c0c4b Move test files to test data root 2014-12-29 18:00:16 +03:00
Andrey Breslav 42113b5e58 Filtering error types and accounting for platform types when computing intersections
KT-6508 Build impossible because of NoSuchElementException

 #KT-6508 Fixed
2014-12-29 14:13:14 +03:00
Svetlana Isakova 74a08c9747 Added tests for simple approximation (of Captured(out/in Int)) 2014-12-27 00:55:26 +03:00
Svetlana Isakova 9d09a4d1b4 Fixed message for TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH error 2014-12-27 00:55:26 +03:00
Svetlana Isakova 7b09e85717 Added check for incompatible variance modifiers and repeated modifiers 2014-12-27 00:55:25 +03:00
Svetlana Isakova d2becce1ac Make vararg argument of java annotation have 'out' type 2014-12-27 00:55:23 +03:00
Svetlana Isakova 179c9ef2d6 Refactoring. Moved error checks (for abstract, super)
to CandidateResolver

 Added error SUPER_CANT_BE_EXTENSION_RECEIVER (it was SUPER_IS_NOT_AN_EXPRESSION)
2014-12-27 00:55:22 +03:00
Valentin Kipyatkov 18a536c846 Added test for correct package names resolve inside local classes 2014-12-26 16:23:19 +03:00
Valentin Kipyatkov a383a82ddd No subpackages of current package resolved by short name 2014-12-26 16:23:19 +03:00
Valentin Kipyatkov 1f17d7adcd Changed language sematics: imports with '*' do not import packages anymore 2014-12-26 15:45:01 +03:00
Andrey Breslav 89e1588e13 LIGHT_CLASSES mode for scripts
- Do not generate constructor bodies
- Do not generate script class when package contents are requested
- NOT DONE: generate script class when its name is requested
2014-12-25 22:02:23 +03:00
Andrey Breslav 292cb9baa9 Resolve dangling annotations in files and class bodies 2014-12-25 19:42:38 +03:00
Andrey Breslav 6728a384e4 KT-4881 Annotation resolved to package should be compile-time error
#KT-4881 Fixed
2014-12-23 15:18:47 +03:00
Svetlana Isakova 6489ff2cb6 Ignore constraint from implicit 'in Nothing'
From Array<T> <: Array<out Int> we may generate T >: Nothing (implicit) and T <: Int (explicit).
Without ignoring we'll infer 'Nothing' for T too often
2014-12-22 12:04:42 +03:00
Andrey Breslav 633a4aa8f2 Self-types marked as unsupported 2014-12-19 20:36:16 +03:00
Zalim Bashorov 2484954e2f Frontend tests: serialize dynamic call descriptors and check them in diagnostic tests. 2014-12-16 17:48:26 +03:00
Svetlana Isakova bda5bab057 Captured type might be substituted in an opposite projection
out Captured (in Int) = out Int
 in Captured (out Int) = in Int
2014-12-16 14:41:56 +03:00
Svetlana Isakova 1f6f607f40 Type variable with non-trivial upper bound cannot capture 'in' projection 2014-12-12 23:08:29 +03:00
Svetlana Isakova 0149e8048c Capture notnullable type if type variable is nullable 2014-12-12 23:08:29 +03:00
Svetlana Isakova 7a5124215a Updated test data for Array<out T> vararg type 2014-12-12 23:08:28 +03:00
Svetlana Isakova 5b4f10e698 Made vararg parameters have Array<out T> type
instead of simply Array<T>
  #KT-1638 Fixed
  #KT-2163 Fixed
  #KT-3213 Fixed
  #KT-4172 Fixed
  #KT-5534 Fixed
2014-12-12 23:08:28 +03:00
Svetlana Isakova a3e949674f Preserve nullability while substituting captured types 2014-12-12 23:08:28 +03:00
Svetlana Isakova f9d4a68c6e KT-6320 AssertionError in ConstraintSystem(The constraint shouldn't contain different type variables on both sides: Y <: X)
#KT-6320 Fixed
2014-12-12 23:08:27 +03:00
Svetlana Isakova 1fb713342b Capture types only on the top level 2014-12-12 23:08:27 +03:00
Svetlana Isakova cd359a046c Added captured types and approximation
CapturedType captures type projection while solving the constraint system.
During the substitution type containing captured types is approximated
to get rid of captured types and (for simple cases) replace them with corresponding type projections.

Note that Array<Array< CapturedType(out Int) >> is (over)approximated by Array<out<Array<out Int>>

See 'Mixed-site variance' by Ross Tate for details.

 #KT-2570 Fixed
 #KT-2872 Fixed
 #KT-3213 Fixed
2014-12-12 23:08:27 +03:00
Denis Zharkov 654411a0b0 Refactored tests using Array constructor:
Some moved to tests with stdlib
Some changed to use arrayOfNulls
2014-12-11 16:04:03 +03:00
Andrey Breslav d17edacb65 Discriminate calls with implicit dynamic receivers 2014-12-10 16:18:38 +03:00
Denis Zharkov 010af19fe9 Delegated Properties: allowing type parameters for get/set methods
#KT-6253 Fixed
2014-12-08 21:30:54 +03:00
Stanislav Erokhin f9afdf7540 Use Visibilities.isVisible with ReceiverValue. 2014-12-08 18:24:30 +03:00
Stanislav Erokhin fc8cec9509 Create PRIVATE_TO_THIS visibility 2014-12-08 18:24:30 +03:00
Stanislav Erokhin d59031fdcc Skip check variance for irrelevant classes 2014-12-08 18:24:30 +03:00
Stanislav Erokhin fced4756bb Add variance test for nullable and function types. 2014-12-08 18:24:30 +03:00
Evgeny Gerashchenko a3fdce8131 Highlighting "as Foo" for useless casts in gray.
#KT-6070 fixed
2014-12-08 17:30:47 +03:00
Nikolay Krasko 75c887048e Drop AbstractLazyResolveRecursiveComparingTest test
Test data from compiler/testData/lazyResolve/ was moved to diagnostics tests
2014-12-03 14:08:23 +03:00