Commit Graph

47129 Commits

Author SHA1 Message Date
Nikolay Krasko cd8d6439aa Minor: add PsiTreeUtilKt#parentOfType to incompatible API 2018-07-10 19:24:22 +03:00
Ilya Gorbunov 5e5b9e5912 Fix incorrect parameter order in TestNG asserter
#KT-25351 Fixed
2018-07-10 19:12:21 +03:00
Mikhail Zarechenskiy 2be08f4d60 [NI] Fix exception, recorded type for function statement can be null
See `checkStatementType`, we return `null` to reduce count of errors.

 Also, note that named function which is used as last statement in lambda
 doesn't coerce to Unit, this is a separate bug and will be addressed later,
 see #KT-25383

 #EA-121026 Fixed
2018-07-10 17:41:17 +03:00
Mikhael Bogdanov eb745133c9 Switch @JvmStatic diagnostic test to LanguageFeature usage 2018-07-10 16:04:30 +02:00
Alexander Udalov e937fe8258 Move PackagePartProvider to module descriptors.jvm 2018-07-10 15:16:49 +02:00
Alexander Udalov 2cb4b7c6d4 Extract MetadataPartProvider out of PackagePartProvider 2018-07-10 15:16:49 +02:00
Alexander Udalov e25bc2865f Remove PackagePartProvider from ResolverForProjectImpl
To be able to move it to JVM-specific modules, and to provide a
replacement for common module analysis
2018-07-10 15:16:49 +02:00
Mikhail Zarechenskiy 33bd1b23a2 Don't assign single elements to varargs as it's deprecated
See #KT-20171
2018-07-10 14:25:45 +03:00
Svyatoslav Kuzmich 77ad97a39e [JS IR BE] Bridges construction 2018-07-10 14:11:09 +03:00
Svyatoslav Kuzmich a2f89cc711 [JS IR BE] Eqeq operator lowering. IntrinsicifyCallsLowering.kt refactoring 2018-07-10 14:11:08 +03:00
Anton Bannykh d412b6f4d0 JS IR: tell CodeConformanceTest that longjs.kt does contain third-party copyright 2018-07-10 13:34:19 +03:00
Anton Bannykh 07b3b66fd9 JS IR: unmute tests 2018-07-10 13:34:19 +03:00
Anton Bannykh 65846d783d JS IR: Long 2018-07-10 13:34:19 +03:00
Anton Bannykh 4872c97929 JS: enable release coroutines 2018-07-10 13:11:39 +03:00
Nicolay Mitropolsky f77e023210 fix ResolveElementCacheTest.kt compilation for 172 2018-07-10 12:11:59 +03:00
Georgy Bronnikov 8ce658ab54 Introduce -Xuse-ir flag for cli compiler 2018-07-10 10:05:06 +02:00
Nicolay Mitropolsky be8740e0ee 172: KotlinUastApiTest.kt compilation fix 2018-07-10 10:28:30 +03:00
Ilya Chernikov 903e613bdd Fix script templates tests after updating definitions selection logic 2018-07-10 08:43:52 +02:00
Natalia Selezneva 5741f81f25 Fix AbstractScriptConfigurationTest
Add dependency on script runtime for module.
Provide default test script template thought template-classpath.
2018-07-10 08:43:52 +02:00
Natalia Selezneva 790188120a Add LightProjectDescriptor with script-runtime dependency. Use it in PsiChecker tests. 2018-07-10 08:43:52 +02:00
Natalia Selezneva 3b8bf3e74e Fix testdata fo IdeaModuleInfoTest: for script in module IdeaModuleInfo is created instead of ScriptModuleInfo.ForFile 2018-07-10 08:43:52 +02:00
Ilya Chernikov b979f3dc52 Fix testdata 2018-07-10 08:43:52 +02:00
Ilya Chernikov b83948f241 Drop support of KOTLIN_HOME environment variable in the command-line compiler
it is proved to be fragile and seems unnecessary at the moment
2018-07-10 08:43:52 +02:00
Ilya Chernikov 9549736d35 Fixes after review 2018-07-10 08:43:52 +02:00
Ilya Chernikov 5d597eb382 Fix configurations chaining in the script compiler 2018-07-10 08:43:52 +02:00
Ilya Chernikov 92d4d986c8 Take path to scripting plugin libs only from compiler jar path...
ignoring all "kotlin home" settings, since we need to load a compatible
plugin. Fixes #KT-24946
2018-07-10 08:43:51 +02:00
Ilya Chernikov ec58929e39 Allow multiple same jsr305 options in the command-line
do not report duplicate jsr305 entries if options are the same
2018-07-10 08:43:51 +02:00
Ilya Chernikov 563e4c9e57 Add kts to supported file extensions to the DirtySourceFilesHolder as well
allows jps to compile scripts along with sources,
finally fixes #KT-22611
2018-07-10 08:43:51 +02:00
Ilya Chernikov f39c6f3b7a Drop half-backed support of "dynamic" annotations on scripts...
leaving it in the history so it could be restored and finished, if needed
2018-07-10 08:43:51 +02:00
Ilya Chernikov dee141b26b Add script constructor annotations inheritance 2018-07-10 08:43:51 +02:00
Ilya Chernikov 0f46f62232 Add script class annotations generation from the base class 2018-07-10 08:43:51 +02:00
Ilya Chernikov edf13c022e Refactor script definitions loading and discovery:
Improve logic, code reuse and readability
Add support for more corner cases
Improve reporting
Add definitions loading test
2018-07-10 08:43:51 +02:00
Ilya Chernikov fbbfe600ec Fix list of script definitions recognized by the asm-based loading:
fix of the previous fix to #KT-24926
2018-07-10 08:43:50 +02:00
Ilya Chernikov 199c3bce40 Fix explicit custom scripting definitions choice logic:
add standard script def after custom defs are processed
2018-07-10 08:43:50 +02:00
Ilya Chernikov e17c36cf12 Improve automatic scripting plugin picking logic 2018-07-10 08:43:50 +02:00
Ilya Chernikov 4812fcf1ad Fix script definition discovery logic:
for cases when directory-based dependencies are passed and directories
with resources are different from directories with classes
Significant refactoring to make code prettier
2018-07-10 08:43:50 +02:00
Ilya Chernikov 56e9bfcd62 Fix default configuration refinement in scripts 2018-07-10 08:43:50 +02:00
Ilya Chernikov befa94689a Return script instance from the evaluation in the basic jvm evaluator 2018-07-10 08:43:50 +02:00
Pavel Talanov 2ecddc996a Implement support for static resolving to scripts in source roots in IDEA 2018-07-10 08:43:50 +02:00
Ilya Chernikov 9453834fb1 Create proper constructor in script descriptor
allows to resolve calls to scripts in compiler (but not in the IDE yet)
Some refactorings on the way
2018-07-10 08:43:50 +02:00
Ilya Gorbunov b7d3382f13 Report more diagnostics when JDK8PlatformImplementations can't be cast to base type
#EA-120914 - CCE: PlatformImplementationsKt.<clinit>
2018-07-09 22:13:57 +03:00
Ilya Gorbunov 35beb9698e Fix overflow in empty progressions' last element
#KT-24204 Fixed
2018-07-09 22:13:51 +03:00
Ilya Gorbunov be8cb94105 Add failing tests for overflow in empty progressions KT-24204 2018-07-09 22:08:01 +03:00
Mikhail Zarechenskiy 14b8ff7d71 Load unsigned constants from class file with the use of expected type 2018-07-09 20:19:26 +03:00
Mikhail Zarechenskiy 9b6e8fa5d1 Do not recreate compile time initializer to avoid type info loosing
When we resolve arguments of annotation, expected type of parameters can
 be unknown. Therefore, if we'll try to load constants without expected type,
 info about unsigndness will be lost. For primitives it worked because we
 can differ type by its value
2018-07-09 20:19:25 +03:00
Mikhail Zarechenskiy 0c6757a8b0 Write is_unsigned flag into metadata for an annotation arguments
Instead of adding new kind of types, we'll use flag to disambiguate
 usual types from unsigned ones, this approach has two advantages:
 - less changes in the metadata format
 - it allows naturally extend format for unsigned arrays,
  which will be supported later

 #KT-25310 Fixed
 #KT-25273 Fixed
2018-07-09 20:06:05 +03:00
Mikhail Zarechenskiy 8c075bc622 Add ability to use unsigned types in LoadJava tests
This is a temporary solution, which will be completely removed in 1.3, see KT-25226
2018-07-09 20:05:38 +03:00
Nicolay Mitropolsky dd0e3cd135 Uast: ULambdaExpression returns proper functionalInterfaceType for SamAdapterExtensionFunctionDescriptor (KT-25297) 2018-07-09 19:41:07 +03:00
Nicolay Mitropolsky 2c7687195c Uast: properly handling explicit SAM (KT-25297) 2018-07-09 19:41:07 +03:00
Nicolay Mitropolsky 38e2d474b7 Uast: create KotlinULambdaExpression for in-place lambdas (KT-25297)
and provide appropriate functionalInterface
2018-07-09 19:41:07 +03:00