Merge remote branch 'origin/master'

This commit is contained in:
Alex Tkachman
2011-12-01 12:58:37 +02:00
2 changed files with 10 additions and 1 deletions
@@ -432,6 +432,7 @@ public class JavaDescriptorResolver {
} }
return functionDescriptor; return functionDescriptor;
} }
DeclarationDescriptor classDescriptor = method.hasModifierProperty(PsiModifier.STATIC) ? resolveNamespace(method.getContainingClass()) : resolveClass(method.getContainingClass());
PsiParameter[] parameters = method.getParameterList().getParameters(); PsiParameter[] parameters = method.getParameterList().getParameters();
FunctionDescriptorImpl functionDescriptorImpl = new FunctionDescriptorImpl( FunctionDescriptorImpl functionDescriptorImpl = new FunctionDescriptorImpl(
owner, owner,
@@ -443,7 +444,7 @@ public class JavaDescriptorResolver {
initializeTypeParameters(method); initializeTypeParameters(method);
functionDescriptorImpl.initialize( functionDescriptorImpl.initialize(
null, null,
DescriptorUtils.getExpectedThisObjectIfNeeded(owner), DescriptorUtils.getExpectedThisObjectIfNeeded(classDescriptor),
typeParameters, typeParameters,
semanticServices.getDescriptorResolver().resolveParameterDescriptors(functionDescriptorImpl, parameters), semanticServices.getDescriptorResolver().resolveParameterDescriptors(functionDescriptorImpl, parameters),
semanticServices.getTypeTransformer().transformToType(returnType), semanticServices.getTypeTransformer().transformToType(returnType),
@@ -0,0 +1,8 @@
// KT-498 Very strange error in the type checker
// +JDK
class IdUnavailableException() : Exception() {}
fun <T : Any> T.getJavaClass() : Class<T> {
return ((this <!CAST_NEVER_SUCCEEDS!>as<!> Object).getClass()) as Class<T> // Some error here, because of Exception() used above. ?!!!
}