Stanislav Erokhin
f47f285868
Expected function type used for parameter types inference in function expression
2015-03-12 17:11:53 +03:00
Stanislav Erokhin
639003b8a8
Allowed function parameter without type declaration in the parser
2015-03-12 17:11:52 +03:00
Stanislav Erokhin
d9882a6d0b
Move inference parameter type in FunctionDescriptorResolver
2015-03-12 17:11:52 +03:00
Stanislav Erokhin
929f1bc9ba
Fixed method hasTypeParameterListBeforeFunctionName in JetNamedFunction
2015-03-12 17:11:47 +03:00
Stanislav Erokhin
44895a23cf
Frontend support for function as expression
2015-03-12 17:11:46 +03:00
Stanislav Erokhin
560c32c0f1
Added diagnostic error when in function declaration name was omitted
2015-03-12 17:11:44 +03:00
Stanislav Erokhin
a33450395c
Resolve parenthesized element as expression
2015-03-12 17:11:43 +03:00
Stanislav Erokhin
3b92cab9e0
Changed containing declaration for PropertyDeclarationInnerScope
2015-03-12 17:11:43 +03:00
Nikolay Krasko
dcd29cb65d
Revert "Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416)"
...
This reverts commit 6ba120bba8 .
2015-03-12 14:18:22 +03:00
Nikolay Krasko
6ba120bba8
Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416)
2015-03-12 12:59:22 +03:00
Pavel V. Talanov
2987e72d29
Do not report redeclaration when outer class and default object's members clash
...
Previously we prohibited classes and properties with the same name (now it's unnecessary)
Add test for backends that they support qualified (by default object name) member references inside class body
2015-03-11 21:06:05 +03:00
Andrey Breslav
61989ba245
KT-6815 Representing raw types when used as supertypes for Java classes
...
#KT-6815 Fixed
2015-03-11 18:27:37 +03:00
Andrey Breslav
e0b7e4efca
KT-6803 Subtyping breaks on star-projections for recursive generics
...
Star-projections have upper bounds of the form "parameter's bound where all parameter of the same class are substituted with their star-projections"
#KT-6803 Fixed
2015-03-11 18:27:36 +03:00
Denis Zharkov
70c573864a
Prohibit DelegationBy specifier when no primary constructor
...
Also add codegen test for case when there is primary
2015-03-11 17:45:29 +03:00
Denis Zharkov
582755e71a
Don't generate empty constructor if there is secondary one with empty parameter list
2015-03-11 17:45:29 +03:00
Denis Zharkov
aab706a6a6
Revert test checking ENUM_ENTRY_ILLEGAL_TYPE
2015-03-11 17:45:28 +03:00
Denis Zharkov
5eb4dcd913
Report conflicting overloads for constructors
...
- It's worked almost fine but diagnostics were filtered out by
positioning strategy.
- Also a couple of "put" calls to Multimap are replaced by "putValues"
within OverloadResolver, that is more semantically correct.
- Note that constructors of top-level classes are handled when processing
package, it helps to figure out if there are clashes with top-level
functions that have the same name.
- But constructors of different classes are not reported as
overloads because containing classes has the same name and will be
reported as redeclaration.
2015-03-11 17:45:28 +03:00
Denis Zharkov
9d2d3c0c7b
Take data flow info from delegation call
2015-03-11 17:45:28 +03:00
Denis Zharkov
aa5599f6ca
Improve positioning strategy for delegation calls
2015-03-11 17:45:28 +03:00
Denis Zharkov
67f97fea42
Prohibit data classes with no primary constructor
2015-03-11 17:45:28 +03:00
Denis Zharkov
4c26d037d9
Resolve property initializer if there is no primary constructor
2015-03-11 17:45:27 +03:00
Denis Zharkov
a872a51a19
Prohibit explicit super call for enum ctrs
2015-03-11 17:45:26 +03:00
Denis Zharkov
f07566d30d
Add warning for initializers with obsolete syntax
...
Expected 'init' keyword before class initializer
2015-03-11 17:45:26 +03:00
Denis Zharkov
0dc155d8c9
Resolve annotations on secondary constructors
2015-03-11 17:45:26 +03:00
Denis Zharkov
7d963e8e07
Differ this/non-this instances for vars initialization in class
...
When deal with constructed object (not this) treat it like it's fully initialized.
Otherwise (this or access with no receiver) access instruction
should be handled as it was before.
#KT-6788 Fixed
#KT-4126 Fixed
2015-03-11 17:45:25 +03:00
Denis Zharkov
f673f4ff47
Prohibit super delegation call if there is primary constructor
2015-03-11 17:45:25 +03:00
Denis Zharkov
835a0df13a
Prohibit secondary constructors in traits
2015-03-11 17:45:25 +03:00
Denis Zharkov
4a628a3d8f
Prohibit supertype initialization without primary constructor
2015-03-11 17:45:25 +03:00
Denis Zharkov
28fbdb7c53
Prohibit constructors declarations for object
2015-03-11 17:45:24 +03:00
Denis Zharkov
3fef4ad742
Minor, drop unneeded accept
2015-03-11 17:45:24 +03:00
Denis Zharkov
525ddf9eb0
Prevent circular secondary constructors delegation
2015-03-11 17:45:24 +03:00
Denis Zharkov
7f20c4a237
Control flow changes for secondary constructors
2015-03-11 17:45:24 +03:00
Denis Zharkov
61ae694be4
Allow return statements in secondary constructors
2015-03-11 17:45:24 +03:00
Denis Zharkov
80e13d3f70
Allow class initializer without primary constructor
2015-03-11 17:45:23 +03:00
Denis Zharkov
3509cafcea
Allow no super class initialization within header
...
if there is no primary constructor
2015-03-11 17:45:23 +03:00
Denis Zharkov
1555eec954
Secondary constructors delegation calls and body resolve
2015-03-11 17:45:23 +03:00
Denis Zharkov
b2cecf1dd0
Secondary constructors resolve
2015-03-11 17:45:23 +03:00
Pavel V. Talanov
581e163031
Report warning on 'class object'
2015-03-10 18:21:32 +03:00
Alexander Udalov
ca8831097f
Resolve annotations on Java constructors
...
Also add tests on custom annotations on fields and methods
2015-03-07 02:32:14 +03:00
Andrey Breslav
d466533ef2
Missing test added
2015-03-06 21:59:03 +03:00
Pavel V. Talanov
5540f09751
Report default object specific diagnostics on 'default' modifier
2015-03-06 19:37:02 +03:00
Pavel V. Talanov
012d25dbca
Add test for soon to be deprecated 'class object' syntax
2015-03-06 19:37:00 +03:00
Pavel V. Talanov
59f192ef90
Replace 'class object' with 'default object' in renderers and test data
...
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00
Pavel V. Talanov
913724f0e9
Allow default object to be denoted with 'default' modifier
...
Report 'default' modifier in illegal positions
2015-03-06 12:41:50 +03:00
Dmitry Jemerov
e9266481c5
allow delegated properties to have getters and setters without bodies
2015-03-05 19:04:17 +03:00
Evgeny Gerashchenko
af7eba64f7
Disallow PropertyMetadataImpl in conventions for delegated properties
2015-03-05 18:42:17 +03:00
Evgeny Gerashchenko
056daeaadb
Don't mark parameters of get/set/propertyDelegated functions as unused.
...
#KT-5974 fixed
2015-03-05 18:42:16 +03:00
Nikolay Krasko
518c35fae1
Intrinsic default objects implementation: old test data modification
2015-03-05 01:30:39 +03:00
Nikolay Krasko
30a50746b5
Intrinsic default objects implementation: tests
2015-03-05 01:30:38 +03:00
Pavel V. Talanov
48fbce9582
Refactor: process mentions of class object
...
Rename usages that refer to "default object" concept now
Test data file names are left as is
2015-03-03 20:57:08 +03:00