Denis Zharkov
993d226c8f
Minor. Extract method for annotations resolution on expression
2016-10-12 11:39:04 +03:00
Denis Zharkov
bec84b1d7b
Change parsing of annotations on block level expressions
...
Attach annotations to the closest prefix expression instead of
whole statement if no new line found after annotations
The motivation is for a simple annotated expression like '@ann x + y'
its syntax form must not change after prepending 'val z = ' just before it
2016-10-12 11:39:04 +03:00
Denis Zharkov
9ff439e39e
Change annotations parsing in bodies of operators
...
This change only matters in cases of if/when/for/while having braceless
blocks
Annotations on them are parsed now as on block-level expressions, i.e.
they're attached to the whole expression
2016-10-12 11:39:04 +03:00
Denis Zharkov
c01b4156d8
Minor. Rename methods in parser
...
Method that was called `parseControlStructureBody` is actually used for
loop bodies only, while `parseExpressionPreferringBlocks` used for
parsing body of control structure (i.e. it must be called
`parseControlStructureBody`)
2016-10-12 11:39:04 +03:00
Simon Ogorodnik
12efb20869
Regenerated tests
2016-10-12 11:08:49 +03:00
Simon Ogorodnik
1a7c507cc5
Fix for KT-13818
...
Javadoc @code conversion
2016-10-12 11:08:49 +03:00
Valentin Kipyatkov
452b77692d
Incremented binary stub version because of changes with annotation rendering in decompiler
2016-10-11 23:43:45 +03:00
Valentin Kipyatkov
5e32589084
Do not take ParameterName annotations into implicit lambda signature
2016-10-11 23:38:55 +03:00
Valentin Kipyatkov
03320d6559
Use partial resolve
2016-10-11 23:38:55 +03:00
Valentin Kipyatkov
31a4c6671e
Fixed incorrect test
2016-10-11 23:38:55 +03:00
Valentin Kipyatkov
968a6cfd04
DescriptorRenderer to skip @ExtensionFunctionType and @ParameterName only when it's redundant
2016-10-11 23:38:54 +03:00
Valentin Kipyatkov
ec51076355
DescriptorRenderer to render annotations for all types + separate option to render annotation arguments + use it in IdeDescriptorRenderers
2016-10-11 23:38:54 +03:00
Valentin Kipyatkov
8baa9ba1de
No parameter names in type of lambda expression and anonymous function
2016-10-11 23:38:54 +03:00
Valentin Kipyatkov
d4050ee074
More correct way of replacing parameter names to preserve overrides
2016-10-11 23:38:53 +03:00
Valentin Kipyatkov
4513f679de
Fixed test data
2016-10-11 23:38:53 +03:00
Pavel V. Talanov
14f3e4c758
Cls stubs and decompiled text: Do not render parameter names in decompiled text and do not load ParameterName annotation in stubs
...
Add tests for decompiled text and stubs
2016-10-11 23:38:53 +03:00
Valentin Kipyatkov
86495fd136
No parameter name in functional type of lambda with 'it'
2016-10-11 23:38:53 +03:00
Valentin Kipyatkov
b2f215227d
Fixed completion to not render functional types with parameter names in lookup items
2016-10-11 23:38:52 +03:00
Valentin Kipyatkov
7f0063013c
Corrected test data
2016-10-11 23:38:52 +03:00
Valentin Kipyatkov
073845ebd4
Fixed test data
2016-10-11 23:38:52 +03:00
Valentin Kipyatkov
4a8b41c72c
Do not render @ParameterName annotations for types
2016-10-11 23:38:52 +03:00
Valentin Kipyatkov
1b7f7fb799
Minor changes on code review
2016-10-11 23:38:51 +03:00
Valentin Kipyatkov
1f9e00b23f
Added tests that surprisingly passed
2016-10-11 23:38:51 +03:00
Valentin Kipyatkov
a62a37f6d8
Added tests for parameter names in function type from SAM-adapter + fixed KT-13861
...
#KT-13861 Fixed
2016-10-11 23:38:51 +03:00
Valentin Kipyatkov
59269ef1ae
ParameterName annotation on type argument used to hold parameter name
2016-10-11 23:38:51 +03:00
Valentin Kipyatkov
3bd39df587
No parameter names in types for error messages
2016-10-11 23:38:50 +03:00
Valentin Kipyatkov
6527ada775
Changes on code review
2016-10-11 23:38:50 +03:00
Valentin Kipyatkov
c0ea237ba4
Added test with type alias
2016-10-11 23:38:50 +03:00
Valentin Kipyatkov
d8759fcbcc
Optimizations
2016-10-11 23:38:50 +03:00
Valentin Kipyatkov
6b94e5fd34
Use parameter names from function type for invoke() function
...
#KT-435 Fixed
#KT-9016 Fixed
2016-10-11 23:38:49 +03:00
Valentin Kipyatkov
0abb2edb2b
Corrected test
2016-10-11 23:38:49 +03:00
Valentin Kipyatkov
41ee06ec96
Use parameter names in DescriptorRenderer
2016-10-11 23:38:49 +03:00
Valentin Kipyatkov
f335f32b48
Some use of parameter names in completion
2016-10-11 23:38:48 +03:00
Valentin Kipyatkov
147d1da1ed
Supported obtaining function type parameter names from KotlinType
2016-10-11 23:38:48 +03:00
Valentin Kipyatkov
8d7b59777c
Moved and renamed tests
2016-10-11 23:38:48 +03:00
Alexander Udalov
4eac12e350
Report warning when SinceKotlin value is greater than -api-version value
...
To prevent this diagnostic be reported in each test on SinceKotlin, disable it
when a diagnostic test contains the "!API_VERSION" directive
2016-10-11 17:46:14 +03:00
Alexander Udalov
167ab1f860
Introduce "-api-version" CLI option
...
The `@SinceKotlin("X.Y.Z")` annotation now hides a particular declaration from
resolution when the API version specified by the `-api-version` option is
_less_ than X.Y.Z. The comparison is performed as for versions in Maven:
MavenComparableVersion is in fact a copy of
org.apache.maven.artifact.versioning.ComparableVersion.
Also support "!API_VERSION" directive in diagnostic tests
#KT-14298 Fixed
2016-10-11 17:46:01 +03:00
Alexander Udalov
e3df8ed2fe
Introduce SinceKotlin annotation, check validity of its value
...
#KT-14297 Fixed
2016-10-11 17:45:51 +03:00
Alexander Udalov
8d660c2f6e
Refactor gradle option generation mechanism
...
Ensure there's a statically checked dependency on LanguageVersion and
JvmTarget, so that this information is updated automatically once a new
language version or a JVM target is added
2016-10-11 17:30:15 +03:00
Alexander Udalov
2c66d4e59b
Move LanguageVersionSettings and JvmTarget to module 'util'
...
To be used from cli-common in the subsequent commits
2016-10-11 17:30:14 +03:00
Alexander Udalov
aaeae8b948
Support deprecation level HIDDEN for classifiers
...
Classifiers annotated with `@Deprecated(level = HIDDEN)` now have smaller
priority in imports, similarly to private classes. For example, if two
classifiers named Foo are imported with a star import and one of them is
deprecated-hidden, the name Foo in the source code is resolved to the other
one.
Also a minor change in multi-module diagnostic tests: do not append newlines
after the last module in the test
#KT-13926 Fixed
2016-10-11 17:30:14 +03:00
Alexander Udalov
83c86d06ed
Report error instead of warning for deprecation level HIDDEN
...
Since functions usually are hidden from resolution when they are
deprecated-hidden, the problem can only be reproduced for properties with
deprecated-hidden accessors, where DeprecatedCallChecker reported warnings
instead of errors
2016-10-11 17:30:13 +03:00
Alexander Udalov
6e0e8c6dc3
Pass LanguageVersionSettings instance to isHiddenInResolution
...
Unused at the moment, will be used later to check if the API version prohibits
the usage of the element
2016-10-11 17:30:12 +03:00
Alexander Udalov
59b29cf00d
Minor, extract isDeprecatedHidden for usage in codegen
...
Also remove a hundred year old TODO
2016-10-11 17:30:11 +03:00
Alexander Udalov
2e4592c6dc
Report error on bound callable references in compatibility mode
...
Previously examples were failing with IllegalStateException from JVM back-end
because there was an error type without any error reported
2016-10-11 17:30:10 +03:00
Valentin Kipyatkov
73dc5fefcb
KT-12077 Code completion inserts FQN for annotations with use-site target inside primary constructor
...
KT-13009 Kotlin: annotation auto-import is broken in multiple ways
#KT-12077 Fixed
#KT-13009 Fixed
2016-10-11 17:26:52 +03:00
Valentin Kipyatkov
0c14058d13
Moved tests
2016-10-11 17:26:52 +03:00
Ilya Gorbunov
16a0c55c6c
Since 'printStackTrace' now fallbacks to the extension in stdlib, change the test expecting it to be deprecated due to language-version 1.0 accordingly.
2016-10-11 16:46:14 +03:00
Ilya Gorbunov
a239231c75
Revert dropping inline-only extensions for Throwable, to be able to use runtime of 1.1 with language version of 1.0 which makes mapped builtin members unavailable again.
...
#KT-14213 Fixed
2016-10-11 16:46:14 +03:00
Dmitry Jemerov
fc46afc108
reduce ComponentRegistry memory use
...
#KT-13136 Fixed
2016-10-11 15:35:06 +02:00