Commit Graph

2570 Commits

Author SHA1 Message Date
Andrey Breslav 22c47c2f82 Highlight only declarations, without body, on platform signature clashes 2014-06-19 22:10:48 +04:00
Andrey Breslav 27e61a75a1 Diagnostic tests for duplicate JVM signatures 2014-06-19 22:10:46 +04:00
Andrey Breslav 449723e388 Repoting platform declarations clashes in CLI compiler for JVM
#KT-1 In Progress
2014-06-19 22:10:44 +04:00
Alexey Sedunov c9c94a59d3 Pseudocode: Copy value of JetThisExpression to enclosed JetSimpleNameExpression 2014-06-19 22:04:46 +04:00
Alexey Sedunov 45bd3a520e Pseudocode: Generate pseudo-values for implicit receivers 2014-06-19 22:04:45 +04:00
Alexey Sedunov 168b32920b Pseudocode: Do not bind call value to callee expressions 2014-06-19 22:04:44 +04:00
Alexey Sedunov 587a9558bc Pseudocode: Introduce "merge" instruction 2014-06-19 22:04:39 +04:00
Evgeny Gerashchenko aa41ae09ed Merge remote-tracking branch 'origin/master' into incremental 2014-06-19 11:43:59 +04:00
Evgeny Gerashchenko f6129732a2 Writing incrementalCache attribute to <modules> element of xml module script 2014-06-19 01:03:59 +04:00
Alexander Udalov 751f062f23 Add *Range.isEmpty(), *Progression.isEmpty() 2014-06-18 20:22:24 +04:00
Evgeny Gerashchenko 7fdd4a339e KT-5087 Private members of Java classes should be marked as invisible, not unresolved
#KT-5087 fixed
2014-06-18 19:52:15 +04:00
Evgeny Gerashchenko cf5fe672de Added test for KT-2381 Can't resolve references to fields inherited from Java class when used Kotlin class is loaded from bytecode
#KT-2381 obsolete
2014-06-18 19:52:12 +04:00
Evgeny Gerashchenko b65f6e1e0e KT-2303 Support loading private class members from bytecode
#KT-2303 obsolete
2014-06-18 19:52:12 +04:00
Andrey Breslav 2ec285735e Test for EA-41250 - E: _JetLexer.zzScanError - Could not match input 2014-06-18 11:32:28 +04:00
Andrey Breslav 512e4cb75e Support transient, strictfp and synchronized flags
#KT-4377 Fixed
2014-06-18 10:55:57 +04:00
Michael Nedzelsky 0332353874 Parser: fix recovery for object literal with no body
#KT-5102 Fixed
2014-06-16 16:25:42 +04:00
Andrey Breslav fe09bd4fd8 Tests for annotation deserialization when platform names are used 2014-06-10 18:21:37 +04:00
Andrey Breslav 705a081919 KT-5214 Annotation to provide platform name to avoid signature conflict
#KT-5214 Fixed
2014-06-10 18:21:36 +04:00
Svetlana Isakova 68b4b8e946 KT-5182 Data flow info is lost for 'when' branches
#KT-5158 Fixed
  #KT-4332 Fixed
2014-06-06 15:56:02 +04:00
Nikolay Krasko 432eabdbcb Don't process val and var keywords in lambda parameters forever (KT-5170)
#KT-5170 Fixed
2014-06-04 18:53:59 +04:00
Alexey Sedunov 4a5d2e6728 Add tests for element -> pseudo-value mapping 2014-06-03 18:17:07 +04:00
Alexey Sedunov d2c055e9da Pseudocode: Introduce pseudo-value analysis 2014-06-03 18:17:05 +04:00
Andrey Breslav 37532e8d02 Compare return types when structurally comparing callables 2014-06-02 22:05:34 +04:00
Andrey Breslav 7f60ccf663 Support equalityAxioms in isSubtypeOf() 2014-06-02 22:05:33 +04:00
Andrey Breslav e50a17e668 Do not compare local classes by FqNames 2014-06-02 22:05:32 +04:00
Andrey Breslav 204fa76691 When checking overrides, compare methods structurally
Because they may come from different copies of the same class from different modules
2014-06-02 22:05:28 +04:00
Laszlo Hornyak 9dec0fb779 Correct the argument types of the StringBuilder.append
Modified AsmUtil to generate calls to more specific append methods
in the StringBuilder class in order to save computation time and make
less temporary objects.

Also adds unit-test to verify that the append(Object) method was
invoked 0 times while the append(String) 3 times

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-06-02 16:34:44 +04:00
Mikhael Bogdanov 34e8cae89e KT-5112 - test file update 2014-06-02 15:21:28 +04:00
Mikhael Bogdanov c80901bafa KT-5112 Generic signature lost for a field copied from class object to containing class
#KT-5112 Fixed
2014-06-02 13:12:25 +04:00
Alexander Udalov 796912bfcb Provide implicit receiver to extension property initializer
This is safe because initializers for extension properties are forbidden
anyway, we'll just won't be generating noisy error messages about non-existent
'this'
2014-05-29 21:24:06 +04:00
Alexander Udalov d78d4bc44c Disallow extension properties with backing fields
#KT-1682 Fixed
2014-05-29 21:24:05 +04:00
Alexander Udalov ea31f372aa Check for syntax/diagnostic errors in some tests 2014-05-29 21:24:05 +04:00
Alexander Udalov 2b5bc6b63d Fix logic of forcing method return type to be wrapped
Return type must be wrapped if any super-method in the hierarchy, not just the
direct super-method, returns a reference type (as opposed to a primitive type)

Actually there was a test reflecting this, but it wasn't running because of an
unfixed diagnostic error
2014-05-29 21:24:02 +04:00
Alexander Udalov 33f8c49275 Minor, change test case according to its name 2014-05-29 21:07:34 +04:00
Alexander Udalov 6210e45fbc Minor, improve test case for KT-1157
Multithreaded version was not working correctly and was throwing NPEs in the
log sometimes
2014-05-29 21:07:34 +04:00
Alexander Udalov 8a84d07645 Fix warnings in JVM codegen tests
Add generics where needed, add nullability annotations, etc.
Also delete some testcases from ArrayGenTest which will never be supported
2014-05-29 21:07:34 +04:00
Alexander Udalov cc94010d07 Fix broken test data file 2014-05-26 16:49:10 +04:00
Mikhael Bogdanov 69ef648005 Write outer class info for closures 2014-05-26 14:48:37 +04:00
Mikhael Bogdanov 449e26ce6d New tests for outer class info 2014-05-26 14:48:34 +04:00
Mikhael Bogdanov 950840b8c7 KT-5076 Error on inlining into object
#KT-5076 Fixed
2014-05-23 11:59:05 +04:00
Alexander Udalov 3c3d120004 Prohibit implicit overrides with lesser visibility
A non-abstract super-declaration is allowed to stand as 'an implementation' of
a fake override only if its visibility is not less than visibilities of all
other super-declarations

 #KT-2491 Fixed
2014-05-22 19:32:10 +04:00
Alexander Udalov db25f568dc Don't report "cannot infer visibility" on property accessors
If the diagnostic is already reported on the corresponding property, no need to
report it again for accessors
2014-05-22 19:32:10 +04:00
Alexander Udalov 9760f30c99 Don't allow fake override to inherit implementation with wrong return type
#KT-4763 Fixed
2014-05-22 19:32:10 +04:00
Andrey Breslav a66f44e4f5 TypeConstructor's equality for classes relies on FqNames
This is needed because different modules/libraries may define classes with the same FqNames, which may be identical or slightly different.
 Such classes must be considered equal, because your dependencies may rely on different packagings of the same codebase, and the classes there will be distinct though identical
  (think intellij-core vs idea-full).
2014-05-21 23:31:32 +04:00
Pavel V. Talanov b3898cfb0d Force the user of AstAccessControl to write at least one test violating restriction, implement such tests for existing tests
This is needed because the slightest change in the test setup can make the check useless without the client knowing
The solution is ugly but gives at least some protection against this
2014-05-21 15:40:29 +04:00
Pavel V. Talanov 0d4feb3bf3 JetInitializerList#getInitializers() by stub 2014-05-21 15:40:09 +04:00
Pavel V. Talanov 72bdacb074 Add explicit return types to several test data files so that AST access is not needed
Test cases are chosen so that addition/removal of explicit type will not interfere with the original purpose of the test
2014-05-21 15:40:08 +04:00
Pavel V. Talanov a807712ce7 Mark test data files for cases which can't be resolved without AST access 2014-05-21 15:40:07 +04:00
Andrey Breslav 773cb9efbe Signature comparison used to find super functions in SignaturesPropagationData
#KT-4509 Fixed
2014-05-21 15:26:05 +04:00
Mikhael Bogdanov 6ad2814b01 Suppot inlining default methods, inlining function into its default. 2014-05-21 13:56:09 +04:00