diff --git a/src/compile/utils/scope.ts b/src/compile/utils/scope.ts
index 20cca46cba..35547b9776 100644
--- a/src/compile/utils/scope.ts
+++ b/src/compile/utils/scope.ts
@@ -75,9 +75,8 @@ export class Scope {
if (node.kind === 'var' && this.block && this.parent) {
this.parent.add_declaration(node);
} else if (node.type === 'VariableDeclaration') {
- const initialised = !!node.init;
-
node.declarations.forEach((declarator: Node) => {
+ const initialised = !!declarator.init;
extract_names(declarator.id).forEach(name => {
this.declarations.set(name, node);
if (initialised) this.initialised_declarations.add(name);
diff --git a/test/custom-elements/samples/no-warn-initialised-props/_config.js b/test/custom-elements/samples/no-warn-initialised-props/_config.js
new file mode 100644
index 0000000000..e26996239d
--- /dev/null
+++ b/test/custom-elements/samples/no-warn-initialised-props/_config.js
@@ -0,0 +1,3 @@
+export default {
+ dev: true
+};
\ No newline at end of file
diff --git a/test/custom-elements/samples/no-warn-initialised-props/main.svelte b/test/custom-elements/samples/no-warn-initialised-props/main.svelte
new file mode 100644
index 0000000000..b71556eecc
--- /dev/null
+++ b/test/custom-elements/samples/no-warn-initialised-props/main.svelte
@@ -0,0 +1,7 @@
+
foo: {foo}
diff --git a/test/custom-elements/samples/no-warn-initialised-props/test.js b/test/custom-elements/samples/no-warn-initialised-props/test.js new file mode 100644 index 0000000000..ae9edd4957 --- /dev/null +++ b/test/custom-elements/samples/no-warn-initialised-props/test.js @@ -0,0 +1,17 @@ +import * as assert from 'assert'; +import './main.svelte'; + +export default function (target) { + const warnings = []; + const warn = console.warn; + + console.warn = warning => { + warnings.push(warning); + }; + + target.innerHTML = '