Commit Graph

38818 Commits

Author SHA1 Message Date
Dmitry Petrov 1bf6f8fc57 Do not generate separate type parameter declarations for constructors 2017-05-04 09:33:03 +03:00
Dmitry Petrov 57b2a4461c Call IrSymbol.bind in declaration constructors 2017-05-04 09:33:03 +03:00
Dmitry Petrov 7995684d07 Bind declaration symbols in DeepCopyIrTree.
Check that symbols are properly bound.
2017-05-04 09:33:03 +03:00
Dmitry Petrov 208bf5c667 Bind declaration symbols in DeepCopyIrTree.
Check that symbols are bound.
2017-05-04 09:33:03 +03:00
Dmitry Petrov a840cf7643 Fix source range tests: support "undefined" offsets 2017-05-04 09:33:03 +03:00
Dmitry Petrov 40e09a39c1 Fix prototype JVM BE tests 2017-05-04 09:33:03 +03:00
Dmitry Petrov 2b0d3440ad Descriptors in calls are substituted,
and symbols refer to the original descriptors.
2017-05-04 09:33:03 +03:00
Dmitry Petrov d7a362b4f6 Binding: all current tests are green. 2017-05-04 09:33:03 +03:00
Dmitry Petrov 00e4accb7b Add 'isBound' property to IrSymbol 2017-05-04 09:33:03 +03:00
Dmitry Petrov 2b48908586 Local delegated properties implementation + some more fixes 2017-05-04 09:33:03 +03:00
Dmitry Petrov c9777fd79f Add symbols to references
TODO: fix some more tests
2017-05-04 09:33:03 +03:00
Dmitry Petrov 0595e93952 Use SymbolTable to create symbols for declarations
Introduce hierarchical sub-tables (for variables, type parameters, and value parameters).
First version passing all tests.
2017-05-04 09:33:03 +03:00
Dmitry Petrov 209864e6a3 Minor: fix IrFunctionImpl#accept 2017-05-04 09:33:03 +03:00
Dmitry Petrov 7289903fa5 Introduce SymbolTable as a symbol factory and unbound symbols tracker 2017-05-04 09:33:03 +03:00
Dmitry Petrov f96a21e899 Redo IrSymbol as a light-weight declaration reference
Strip it of any "useful" information but a reference to the corresponding
symbol owner (file or a declaration).
TODO: add that useful information to declarations.

NB not all IrDeclarations have IrSymbols (IrProperty doesn't - at least now).
2017-05-04 09:33:03 +03:00
Dmitry Petrov b817638851 Add IrSimpleFunction : IrFunction
NB can't make 'override val descriptor: SimpleFunctionDescriptor' there,
because there are quite some FunctionDescriptors that are not
SimpleFunctionDescriptor, but actually belong to this category.
2017-05-04 09:33:03 +03:00
Dmitry Petrov a416cddcb2 Generate declarations for FAKE_OVERRIDE members 2017-05-04 09:33:03 +03:00
Dmitry Petrov 4ee1fb9309 Minor refactoring
- Get rid of IrClassImpl usages where IrClass is enough
- Use startOffsetOrUndefined / endOffsetOrUndefined
2017-05-04 09:33:03 +03:00
Dmitry Petrov 8cea27b5bb Generate IrTypeParameter and IrValueParameter declarations 2017-05-04 09:33:03 +03:00
Dmitry Petrov 03b664febd Insert implicit casts for default parameter values in IrValueParameter 2017-05-04 09:33:03 +03:00
Dmitry Petrov 77614a749b Minor: unnecessary overrides in IrBlockImpl 2017-05-04 09:33:03 +03:00
Dmitry Petrov abb687aa7f Introduce IrTypeParameter and IrValueParameter declarations 2017-05-04 09:33:03 +03:00
Dmitry Petrov c6b259c36c IrSymbol interface hierarchy, initial import
"Symbols" are (presumably simpler) alternative to descriptors, tailored
for IR-based back-end implementation.
2017-05-04 09:33:03 +03:00
Pavel V. Talanov 59012c0551 FakeFileForLightClass is not physical
Fix Spring tests
2017-05-03 21:38:49 +03:00
Pavel V. Talanov 9e25dfdd93 KtLightModifierList extends KtLightElementBase
Fix getContainingFile always returning null
2017-05-03 21:38:48 +03:00
Ilya Chernikov 25d2cc0279 Use invokeLater properly on scripts reconfiguration
Should fix #EA-97987
2017-05-03 18:11:48 +02:00
Ilya Chernikov 5745752841 Ignore empty lines at the end of the testdata, more tests
should finally fix source-section plugin tests on windows
2017-05-03 18:11:47 +02:00
Ilya Chernikov 732367e671 Pass earlier scripts as array, removes 255-lines repl limitation
fixes #KT-10060
2017-05-03 18:11:46 +02:00
Ilya Chernikov 15ccd28e2e Switch old IDE/CLI repls to the new infrastructure
should also fix #KT-5822
2017-05-03 18:11:45 +02:00
Ilya Chernikov e384268c8b minor: unwrapping InvocationTargetException on repl line evaluation...
To provide better error diagnostics
2017-05-03 18:11:44 +02:00
Ilya Chernikov 8cc576d44f Add total reset to repl history and state interfaces 2017-05-03 18:11:43 +02:00
Ilya Chernikov c746cae72d minor: add some generic repl tests...
in particular ignored test256Evals test that fails due to #KT-10060
2017-05-03 18:11:42 +02:00
Ilya Chernikov f152af6385 minor: some repl cleanup 2017-05-03 18:11:41 +02:00
Mikhael Bogdanov 4e0bacab1e Add '/' to 'bin/java' path 2017-05-03 17:48:43 +02:00
Nikolay Krasko d094854878 Better indentation for expressions without parsed errors (KT-12123)
#KT-12123 Fixed
2017-05-03 18:03:40 +03:00
Nikolay Krasko c0b545085a Search statics java declarations through star imports 2017-05-03 18:03:39 +03:00
Nikolay Krasko 2d51d72708 Use classes to increase search pattern for static declarations
Static common names like 'INSTANCE', 'create' can give many irrelevant
references in the project.

#KT-17000 Fixed
#KT-14974 Fixed
2017-05-03 18:03:39 +03:00
Nikolay Krasko 7ee58be515 Don't fall back to full search because of reference in fqname 2017-05-03 18:03:39 +03:00
Nikolay Krasko 5cbc653f00 Avoid 'invoke' reference resolve because of references on the same range
When 'text' usages are being search, invoke reference in 'some(text)'
is considered relevant.
2017-05-03 18:03:39 +03:00
Nikolay Krasko 43d8a70ad3 Remove property accessor references from packages, imports and types 2017-05-03 18:03:39 +03:00
Nikolay Krasko ba2f43ab78 Add caching for reference resolution in idea ResolveCache 2017-05-03 18:03:39 +03:00
Ilya Gorbunov 9953efc66b Clarify ReentrantReadWriteLock.write behavior regarding upgrade from read to write lock
#KT-17704 Fixed
2017-05-03 17:51:14 +03:00
Ilya Gorbunov ef72371fd7 Add samples for contentToString and contentDeepToString array operations 2017-05-03 17:44:30 +03:00
Marek Langiewicz 934b0b8c38 Fix List.takeLast for lists without RandomAccess 2017-05-03 16:38:15 +02:00
Ilya Gorbunov 8da4839f22 Document IllegalArgumentException thrown from string-number conversion
functions when an invalid radix is specified
#KT-17635 Fixed
2017-05-03 17:32:49 +03:00
Alexey Andreev cffdd3fd26 Add changelog for 1.1.3 2017-05-03 17:26:21 +03:00
Mikhael Bogdanov 84eeed51b1 Restore accidentally removed parameter index passing to call generator
Parameter index was removed in
 7690a8bc3e commit:
 "Get rid of redundant 'afterParameterPut' method from call generators"

  #KT-17653 Fixed
2017-05-03 12:56:15 +02:00
Igor Chevdar 962bce19a2 Enabled tests on coroutines for native 2017-05-03 10:42:07 +03:00
Dmitry Jemerov 7812a17f13 Mark Kotlin plugin as a JPS plugin so that JPS extensions are loaded
The Kotlin output parser for the Gradle build output in Android Studio
is loaded through the JPS extension manager, and the Kotlin JPS
plugin doesn't exist in Android Studio, so we need to use this
mechanism.

 #KT-17596 Fixed
2017-05-02 21:26:45 +02:00
Svetlana Isakova 191e0802e9 Added description for 'Name resolution and SAM conversion' 2017-05-02 21:14:48 +03:00