@@ -5495,7 +5495,7 @@ namespace ts {
54955495 prop.checkFlags = templateReadonly || modifiersProp && isReadonlySymbol(modifiersProp) ? CheckFlags.Readonly : 0;
54965496 prop.type = propType;
54975497 if (propertySymbol) {
5498- prop.mappedTypeOrigin = propertySymbol;
5498+ prop.syntheticOrigin = propertySymbol;
54995499 }
55005500 members.set(propName, prop);
55015501 }
@@ -7449,7 +7449,6 @@ namespace ts {
74497449 const declarations: Declaration[] = concatenate(leftProp.declarations, rightProp.declarations);
74507450 const flags = SymbolFlags.Property | (leftProp.flags & SymbolFlags.Optional);
74517451 const result = createSymbol(flags, leftProp.name);
7452- result.checkFlags = 0;
74537452 result.type = getUnionType([getTypeOfSymbol(leftProp), getTypeWithFacts(rightType, TypeFacts.NEUndefined)]);
74547453 result.leftSpread = leftProp;
74557454 result.rightSpread = rightProp;
@@ -7465,15 +7464,14 @@ namespace ts {
74657464 }
74667465
74677466 function getNonReadonlySymbol(prop: Symbol) {
7468- if (!(getDeclarationModifierFlagsFromSymbol( prop) & ModifierFlags.Readonly )) {
7467+ if (!isReadonlySymbol( prop)) {
74697468 return prop;
74707469 }
7471- const declarations: Declaration[] = prop.declarations;
74727470 const flags = SymbolFlags.Property | (prop.flags & SymbolFlags.Optional);
74737471 const result = createSymbol(flags, prop.name);
7474- result.checkFlags = 0;
74757472 result.type = getTypeOfSymbol(prop);
7476- result.declarations = declarations;
7473+ result.declarations = prop.declarations;
7474+ result.syntheticOrigin = prop;
74777475 return result;
74787476 }
74797477
@@ -22140,10 +22138,10 @@ namespace ts {
2214022138 else if (symbol.flags & SymbolFlags.Transient) {
2214122139 if ((symbol as SymbolLinks).leftSpread) {
2214222140 const links = symbol as SymbolLinks;
22143- return [links.leftSpread, links.rightSpread];
22141+ return [...getRootSymbols( links.leftSpread), ...getRootSymbols( links.rightSpread) ];
2214422142 }
22145- if ((symbol as SymbolLinks).mappedTypeOrigin ) {
22146- return getRootSymbols((symbol as SymbolLinks).mappedTypeOrigin );
22143+ if ((symbol as SymbolLinks).syntheticOrigin ) {
22144+ return getRootSymbols((symbol as SymbolLinks).syntheticOrigin );
2214722145 }
2214822146
2214922147 let target: Symbol;
0 commit comments