private void processSecondaryConstructor( MutableClassDescriptor classDescriptor, JetSecondaryConstructor constructor) { if (classDescriptor.getKind() == ClassKind.TRAIT) { // context.getTrace().getErrorHandler().genericError(constructor.getNameNode(), "A // trait may not have a constructor"); context.getTrace().report(CONSTRUCTOR_IN_TRAIT.on(constructor.getNameNode())); } ConstructorDescriptor constructorDescriptor = context .getDescriptorResolver() .resolveSecondaryConstructorDescriptor( classDescriptor.getScopeForMemberResolution(), classDescriptor, constructor); classDescriptor.addConstructor(constructorDescriptor, context.getTrace()); context.getConstructors().put(constructor, constructorDescriptor); context.getDeclaringScopes().put(constructor, classDescriptor.getScopeForMemberLookup()); }