diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java index 8957a3588f3..86710ab25c9 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/DescriptorResolver.java @@ -431,6 +431,9 @@ public class DescriptorResolver { // Error is reported by the parser type = ErrorUtils.createErrorType("Annotation is absent"); } + if (parameter.hasModifier(JetTokens.VARARG_KEYWORD)) { + return getVarargParameterType(type); + } return type; } diff --git a/compiler/testData/diagnostics/tests/varargs/kt1838-param.jet b/compiler/testData/diagnostics/tests/varargs/kt1838-param.jet new file mode 100644 index 00000000000..607bbfd1ebb --- /dev/null +++ b/compiler/testData/diagnostics/tests/varargs/kt1838-param.jet @@ -0,0 +1,5 @@ +class A(vararg t : Int) { + { + val t1 : IntArray = t + } +} diff --git a/compiler/testData/diagnostics/tests/varargs/kt1838-val.jet b/compiler/testData/diagnostics/tests/varargs/kt1838-val.jet new file mode 100644 index 00000000000..ae719ee3d42 --- /dev/null +++ b/compiler/testData/diagnostics/tests/varargs/kt1838-val.jet @@ -0,0 +1,5 @@ +class A(vararg val t : Int) { + { + val t1 : IntArray = t + } +}