diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts
index b3792a97988..758c5bbb4ad 100644
--- a/src/compiler/checker.ts
+++ b/src/compiler/checker.ts
@@ -15367,6 +15367,8 @@ namespace ts {
case SpecialPropertyAssignmentKind.ThisProperty:
case SpecialPropertyAssignmentKind.ModuleExports:
return getSymbolOfNode(entityName.parent.parent);
+ default:
+ // Fall through if it is not a special property assignment
}
}
diff --git a/tests/cases/fourslash/renameCrossJsTs01.ts b/tests/cases/fourslash/renameCrossJsTs01.ts
new file mode 100644
index 00000000000..52cb4c587d1
--- /dev/null
+++ b/tests/cases/fourslash/renameCrossJsTs01.ts
@@ -0,0 +1,12 @@
+///
+
+// @allowJs: true
+// @Filename: a.js
+////exports.[|area|] = function (r) { return r * r; }
+
+// @Filename: b.ts
+////import { [|area|] } from './a';
+////var t = /**/[|area|](10);
+
+goTo.marker();
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameCrossJsTs02.ts b/tests/cases/fourslash/renameCrossJsTs02.ts
new file mode 100644
index 00000000000..7ff1ae96ff3
--- /dev/null
+++ b/tests/cases/fourslash/renameCrossJsTs02.ts
@@ -0,0 +1,12 @@
+///
+
+// @allowJs: true
+// @Filename: a.js
+////exports./**/[|area|] = function (r) { return r * r; }
+
+// @Filename: b.ts
+////import { [|area|] } from './a';
+////var t = [|area|](10);
+
+goTo.marker();
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsExports.ts b/tests/cases/fourslash/renameJsExports01.ts
similarity index 72%
rename from tests/cases/fourslash/renameJsExports.ts
rename to tests/cases/fourslash/renameJsExports01.ts
index 227eebe4a0d..923d30eedf9 100644
--- a/tests/cases/fourslash/renameJsExports.ts
+++ b/tests/cases/fourslash/renameJsExports01.ts
@@ -9,4 +9,4 @@
////var t = mod./**/[|area|](10);
goTo.marker();
-verify.renameLocations(false, false);
\ No newline at end of file
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsExports02.ts b/tests/cases/fourslash/renameJsExports02.ts
new file mode 100644
index 00000000000..86b0471dc1f
--- /dev/null
+++ b/tests/cases/fourslash/renameJsExports02.ts
@@ -0,0 +1,12 @@
+///
+
+// @allowJs: true
+// @Filename: a.js
+////exports./**/[|area|] = function (r) { return r * r; }
+
+// @Filename: b.js
+////var mod = require('./a');
+////var t = mod.[|area|](10);
+
+goTo.marker();
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsPrototypeProperty.ts b/tests/cases/fourslash/renameJsPrototypeProperty01.ts
similarity index 69%
rename from tests/cases/fourslash/renameJsPrototypeProperty.ts
rename to tests/cases/fourslash/renameJsPrototypeProperty01.ts
index 651514859cc..f756f57edbf 100644
--- a/tests/cases/fourslash/renameJsPrototypeProperty.ts
+++ b/tests/cases/fourslash/renameJsPrototypeProperty01.ts
@@ -9,4 +9,4 @@
////t./**/[|x|] = 11;
goTo.marker();
-verify.renameLocations(false, false);
\ No newline at end of file
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsPrototypeProperty02.ts b/tests/cases/fourslash/renameJsPrototypeProperty02.ts
new file mode 100644
index 00000000000..721dc312eb6
--- /dev/null
+++ b/tests/cases/fourslash/renameJsPrototypeProperty02.ts
@@ -0,0 +1,12 @@
+///
+
+// @allowJs: true
+// @Filename: a.js
+////function bar() {
+////}
+////bar.prototype./**/[|x|] = 10;
+////var t = new bar();
+////t.[|x|] = 11;
+
+goTo.marker();
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsThisProperty.ts b/tests/cases/fourslash/renameJsThisProperty01.ts
similarity index 68%
rename from tests/cases/fourslash/renameJsThisProperty.ts
rename to tests/cases/fourslash/renameJsThisProperty01.ts
index aed59d298b1..91338e0431d 100644
--- a/tests/cases/fourslash/renameJsThisProperty.ts
+++ b/tests/cases/fourslash/renameJsThisProperty01.ts
@@ -9,4 +9,4 @@
////t./**/[|x|] = 11;
goTo.marker();
-verify.renameLocations(false, false);
\ No newline at end of file
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file
diff --git a/tests/cases/fourslash/renameJsThisProperty02.ts b/tests/cases/fourslash/renameJsThisProperty02.ts
new file mode 100644
index 00000000000..8398507c9ca
--- /dev/null
+++ b/tests/cases/fourslash/renameJsThisProperty02.ts
@@ -0,0 +1,12 @@
+///
+
+// @allowJs: true
+// @Filename: a.js
+////function bar() {
+//// this./**/[|x|] = 10;
+////}
+////var t = new bar();
+////t.[|x|] = 11;
+
+goTo.marker();
+verify.renameLocations( /*findInStrings*/ false, /*findInComments*/ false);
\ No newline at end of file