From a2ef66f19724b8e8481219b203f04fff838862f5 Mon Sep 17 00:00:00 2001 From: Gerald Lewis Date: Mon, 9 Jan 2012 12:53:32 -0500 Subject: [PATCH] Issue #1547 'use strict' duplicate property definitions in obj literals prohibited --- src/nodes.coffee | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/nodes.coffee b/src/nodes.coffee index 034b18ae..e3746077 100644 --- a/src/nodes.coffee +++ b/src/nodes.coffee @@ -780,6 +780,14 @@ exports.Obj = class Obj extends Base compileNode: (o) -> props = @properties + propNames = [] + for prop in @properties + prop = prop.variable if prop.isComplex() + if prop? + propName = prop.unwrapAll().value.toString() + if propName in propNames + throw SyntaxError "duplicate data property #{propName} in object literals are not allowed" + propNames.push propName return (if @front then '({})' else '{}') unless props.length if @generated for node in props when node instanceof Value