Diagnostics: Fix range of DECLARATION_SIGNATURE diagnostics reported on secondary constructors

This commit is contained in:
Alexey Sedunov
2015-06-10 14:42:52 +03:00
parent 95438c7b5d
commit e1e1dd9413
4 changed files with 7 additions and 7 deletions
@@ -121,7 +121,7 @@ public object PositioningStrategies {
public val DECLARATION_SIGNATURE: PositioningStrategy<JetDeclaration> = object : DeclarationHeader<JetDeclaration>() { public val DECLARATION_SIGNATURE: PositioningStrategy<JetDeclaration> = object : DeclarationHeader<JetDeclaration>() {
override fun mark(element: JetDeclaration): List<TextRange> { override fun mark(element: JetDeclaration): List<TextRange> {
when (element) { when (element) {
is JetPrimaryConstructor -> { is JetConstructor<*> -> {
val begin = element.getConstructorKeyword() ?: element.getValueParameterList() ?: return markElement(element) val begin = element.getConstructorKeyword() ?: element.getValueParameterList() ?: return markElement(element)
val end = element.getValueParameterList() ?: element.getConstructorKeyword() ?: return markElement(element) val end = element.getValueParameterList() ?: element.getConstructorKeyword() ?: return markElement(element)
return markRange(begin, end) return markRange(begin, end)
@@ -19,6 +19,6 @@ val x = object <!CONSTRUCTOR_IN_OBJECT!>(val prop: Int)<!> {
class A3 { class A3 {
companion object B<!CONSTRUCTOR_IN_OBJECT!>(val prop: Int)<!> { companion object B<!CONSTRUCTOR_IN_OBJECT!>(val prop: Int)<!> {
<!CONSTRUCTOR_IN_OBJECT!>public constructor()<!> : this(2) public <!CONSTRUCTOR_IN_OBJECT!>constructor()<!> : this(2)
} }
} }
@@ -1,6 +1,6 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
class C { class C {
<!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.jvmOverloads constructor()<!> { @kotlin.jvm.jvmOverloads <!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>constructor()<!> {
} }
<!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.jvmOverloads fun foo(s: String)<!> {} <!OVERLOADS_WITHOUT_DEFAULT_ARGUMENTS!>@kotlin.jvm.jvmOverloads fun foo(s: String)<!> {}
@@ -1,8 +1,8 @@
import kotlin.platform.platformStatic import kotlin.platform.platformStatic
class A { class A {
<!PLATFORM_STATIC_ILLEGAL_USAGE!>platformStatic constructor()<!> {} platformStatic <!PLATFORM_STATIC_ILLEGAL_USAGE!>constructor()<!> {}
inner class B { inner class B {
<!PLATFORM_STATIC_ILLEGAL_USAGE!>platformStatic constructor()<!> {} platformStatic <!PLATFORM_STATIC_ILLEGAL_USAGE!>constructor()<!> {}
} }
} }