Commit Graph

5746 Commits

Author SHA1 Message Date
Nikolay Krasko 450d6cad3b Don't memoize exceptions in built-ins resolve session 2013-08-22 21:16:57 +04:00
Andrey Breslav 6cee65d74e A test for nesting implicitly labeled calls
The actual error message should be "return not allowed", but due to a bug in label resolution it is "unresolved reference"
2013-08-22 17:13:08 +04:00
Andrey Breslav 55eb994502 KT-3919 Automatic labeling of lambdas by receiving functions
#KT-3919 Fixed
2013-08-22 14:27:01 +04:00
Andrey Breslav 07a8dff5f4 Fix builtins dir lookup for the case where there's no directory entry in the JAR file 2013-08-22 14:02:51 +04:00
Andrey Breslav 96335b2e71 Do not look for a common supertype if there is only one type in the worklist 2013-08-22 12:18:12 +04:00
Andrey Breslav a51ea10f55 No need to produce error types when RETURN_NOT_ALLOWED_EXPLICIT_RETURN_TYPE_REQUIRED is reported 2013-08-21 20:12:05 +04:00
Andrey Breslav 3f3ee378f3 Test that local return has type Nothing 2013-08-21 20:12:05 +04:00
Andrey Breslav aa99c29d8d JVM backend test for local returns 2013-08-21 20:12:05 +04:00
Andrey Breslav 08625a6b2f Local returns are only allowed with explicitly specified return types
This is a temporary limitation: otherwise type inference is having trouble to account for all the returned expressions.
 We will fix the inference and remove the limitation
2013-08-21 20:12:04 +04:00
Andrey Breslav d97506476f Minor. Local variable renamed 2013-08-21 20:12:04 +04:00
Andrey Breslav 4138ac4e36 Support local returns in lambdas 2013-08-21 20:12:04 +04:00
Andrey Breslav 3ead1cea37 Duplicating parameters removed 2013-08-21 20:12:04 +04:00
Andrey Breslav 2c1375f948 Minor: code cleanup 2013-08-21 20:12:04 +04:00
Andrey Breslav db70087573 Labels on function literal arguments are processed properly 2013-08-21 20:12:04 +04:00
Andrey Breslav 9f90fd0938 No "unreachable code" errors when an illegal return expression is the last in a lambda 2013-08-21 20:12:04 +04:00
Andrey Breslav 34df845778 Clarifying comments for RETURN_NOT_ALLOWED 2013-08-21 20:12:03 +04:00
Nikolay Krasko b4c7122528 Move built-in files out of source directory 2013-08-21 19:52:42 +04:00
Andrey Breslav 3d28c4cdb2 Passing DataFlowInfo to local classes/objects
#KT-2835 In Progress
#KT-2225 In Progress
#KT-338 In Progress
2013-08-19 19:05:21 +04:00
Andrey Breslav 4908766813 Passing DataFlowInfo when analyzing property initializers
#KT-2835 In Progress
#KT-2225 In Progress
#KT-338 In Progress
2013-08-19 19:05:21 +04:00
Andrey Breslav 232d1cac7b Recursive generics fixed 2013-08-19 19:05:20 +04:00
Andrey Breslav 63c284e200 Passing DataFlowInfo to local classes/objects
#KT-2835 In Progress
#KT-2225 In Progress
#KT-338 In Progress
2013-08-19 19:05:20 +04:00
Andrey Breslav c95f2b78c8 Outer DataFlowInfo is passed to TopDownAnalyzer 2013-08-19 19:05:20 +04:00
Andrey Breslav 0e1ba96e2c Unused code removed 2013-08-19 19:05:20 +04:00
Mikhael Bogdanov 185b5013fe Properly process nested try and loop blocks
KT-3894: Loops and finally: finally block executed twice when break and return exists in try/finally block
KT-3874: Compilation error on try catch block contains break and continue
KT-3869: Loops and finally: outer finally block not run

 #KT-3869 Fixed
 #KT-3894 Fixed
 #KT-3874 Fixed
2013-08-19 16:06:56 +04:00
Mikhael Bogdanov d0f042ba93 Properly generate exception table for try/catch block
KT-3549 'Finally' block not run when re-throwing exception
KT-3867 When catched exception occurs in finnaly block it invokes additional catch and itself

  #KT-3549 Fixed
  #KT-3867 Fixed
2013-08-19 16:06:56 +04:00
Nikolay Krasko e984ce2aa8 Introduce method for getting element with context for better error reports 2013-08-19 14:44:30 +04:00
Nikolay Krasko a4f452a943 Refactoring: Introduce EMPTY AnalyzeExhaust constant 2013-08-15 19:04:43 +04:00
Nikolay Krasko 73308378e5 Add ability to test jet file is in scope 2013-08-14 15:31:16 +04:00
Nikolay Krasko 388f365900 Cache resolve session under OUT_OF_BLOCK_MODIFICATION_TRACKER 2013-08-14 15:31:14 +04:00
Mikhael Bogdanov c9215ed8a5 KT-2784 VerifyError when passing a value to a class object's super type constructor
#KT-2784 Fixed
2013-08-12 18:58:09 +04:00
Zalim Bashorov b46e0361c5 Use the system path separator character in compiler messages.
Fix for CliTest.
2013-08-12 13:37:44 +04:00
Andrey Breslav be8045a392 Adding info to an exception 2013-08-12 13:24:20 +04:00
Evgeny Gerashchenko 3f7627120b KT-3853 ISE on resolving function implementation from trait from Java
The fix is simple and dirty, because the related code will be removed soon anyways. Fix is necessary for compiling Kara.

 #KT-3853 fixed
2013-08-08 21:39:25 +04:00
Nikolay Krasko 9205c0251e Cache result of resolveElement requests 2013-08-08 00:37:46 +04:00
Nikolay Krasko 8d06a72157 Store exception caught during computation as a result and rethrow it 2013-08-08 00:37:45 +04:00
Nikolay Krasko ca675290a8 Allow to monitor only thread name 2013-08-08 00:37:45 +04:00
Nikolay Krasko bee3295f34 Fix tracking slices 2013-08-08 00:37:44 +04:00
Nikolay Krasko e402c4d527 Guard creation of LazyClassDescriptor with lock to avoid getting 'this' in invalid state 2013-08-08 00:37:42 +04:00
Nikolay Krasko 70ae9e589c Generate only final fields for injectors - make the access thread-safe 2013-08-08 00:37:42 +04:00
Nikolay Krasko 14247ea2ab Guard construction of imports index under common lock 2013-08-08 00:37:41 +04:00
Nikolay Krasko fbe1491ad4 Lock based binding context 2013-08-08 00:37:40 +04:00
Mikhael Bogdanov 8a4b01d9c6 KT-3702: Inner class constructor cannot be invoked in override function with receiver
KT-3532: NoSuchMethodError when constructing Java inner class
KT-3847: Class is not recognized as inner when loaded from binaries

 #KT-3702 Fixed
 #KT-3532 Fixed
 #KT-3847 Fixed
2013-08-06 10:58:27 +04:00
Natalia.Ukhorskaya 8e45bb7657 Fix wrong generated class name invoking inner objects from another module 2013-08-06 10:17:25 +04:00
Natalia.Ukhorskaya acf8c88cfc Java property as annotation parameter 2013-08-02 18:59:29 +04:00
Natalia.Ukhorskaya e792238cbe Boolean as annotation parameter (java) 2013-08-02 18:59:27 +04:00
Natalia.Ukhorskaya 064f114b25 Allow top-level properties or properties from class object as annotation parameters 2013-08-02 18:59:26 +04:00
Natalia.Ukhorskaya 27801d5351 Add test: primitive values as annotation parameter 2013-08-02 18:59:25 +04:00
Evgeny Gerashchenko 7f62b9259c KT-3820 VerifyError when invoking intrinsic for range obtained from collection
#KT-3820 fixed
2013-07-31 15:54:45 -07:00
Evgeny Gerashchenko 1e10712802 Minor. Added 'final'. 2013-07-31 15:54:45 -07:00
Alexey Sedunov 203e80debe Implement "Safe Delete" refactoring for type parameters
Conflicts:
	idea/src/org/jetbrains/jet/plugin/refactoring/safeDelete/KotlinSafeDeleteProcessor.java

Conflicts:
	generators/org/jetbrains/jet/generators/tests/GenerateTests.java

Conflicts:
	generators/org/jetbrains/jet/generators/tests/GenerateTests.java
2013-07-29 19:24:53 +04:00