2b21280ba9
The problem is very subtle (see the test): when generating a signature for an object literal we also were mapping its super-class (a type alias here). Although we did unwrap its underlying constructor to map it properly we did too late (after obtaining value parameters from the type alias constructor descriptor). Another problem is that TypeAliasConstructorDescriptor.getOriginal in the case does return itself, while it's expected to return unsubstituted version Note: everything works for common calls for such constructors because they mapped through mapCallableMethod which contains another custom unwrapping of type alias constructors #KT-16555 Fixed