diff --git a/src/services/findAllReferences.ts b/src/services/findAllReferences.ts
index 5215b28a403..b4f1c19837d 100644
--- a/src/services/findAllReferences.ts
+++ b/src/services/findAllReferences.ts
@@ -363,7 +363,7 @@ namespace ts.FindAllReferences {
const { node, kind } = entry;
const name = originalNode.text;
const isShorthandAssignment = isShorthandPropertyAssignment(node.parent);
- if (isShorthandAssignment || isObjectBindingElementWithoutPropertyName(node.parent)) {
+ if (isShorthandAssignment || isObjectBindingElementWithoutPropertyName(node.parent) && node.parent.name === node) {
const prefixColon: PrefixAndSuffix = { prefixText: name + ": " };
const suffixColon: PrefixAndSuffix = { suffixText: ": " + name };
return kind === EntryKind.SearchedLocalFoundProperty ? prefixColon
diff --git a/tests/cases/fourslash/renameBindingElementInitializerExternal.ts b/tests/cases/fourslash/renameBindingElementInitializerExternal.ts
new file mode 100644
index 00000000000..852be8cc7b8
--- /dev/null
+++ b/tests/cases/fourslash/renameBindingElementInitializerExternal.ts
@@ -0,0 +1,17 @@
+///
+
+////[|const [|{| "contextRangeIndex": 0 |}external|] = true;|]
+////
+////function f({
+//// lvl1 = [|external|],
+//// nested: { lvl2 = [|external|]},
+//// oldName: newName = [|external|]
+////}) {}
+////
+////const {
+//// lvl1 = [|external|],
+//// nested: { lvl2 = [|external|]},
+//// oldName: newName = [|external|]
+////} = obj;
+
+verify.rangesWithSameTextAreRenameLocations("external");
diff --git a/tests/cases/fourslash/renameBindingElementInitializerProperty.ts b/tests/cases/fourslash/renameBindingElementInitializerProperty.ts
new file mode 100644
index 00000000000..ed07a6cec0d
--- /dev/null
+++ b/tests/cases/fourslash/renameBindingElementInitializerProperty.ts
@@ -0,0 +1,20 @@
+///
+
+////function f([|{[|{| "contextRangeIndex": 0 |}required|], optional = [|required|]}: {[|[|{| "contextRangeIndex": 3 |}required|]: number,|] optional?: number}|]) {
+//// console.log("required", [|required|]);
+//// console.log("optional", optional);
+////}
+////
+////f({[|[|{| "contextRangeIndex": 6 |}required|]: 10|]});
+
+const [r0Def, r0, r1, r2Def, r2, r3, r4Def, r4] = test.ranges();
+verify.renameLocations([r0, r1, r3], [
+ { range: r0, prefixText: "required: " },
+ { range: r1},
+ { range: r3}
+]);
+verify.renameLocations([r2, r4], [
+ { range: r0, suffixText: ": required" },
+ { range: r2},
+ { range: r4}
+]);