     return [@makeCode(if @front then '({})' else '{}')] unless props.length
     if @generated
       for node in props when node instanceof Value
-        throw new Error 'cannot have an implicit value in an implicit object'
+        throw new SyntaxError 'cannot have an implicit value in an implicit object'
     idt         = o.indent += TAB
     lastNoncom  = @lastNonComment @properties
     answer = []

      else
        ',\n'
      indent = if prop instanceof Comment then '' else idt
      if prop instanceof Value and prop.this
        prop = new Assign prop.properties[0].name, prop, 'object'
      if prop not instanceof Comment

        func = assign.value
        if base.value is 'constructor'
          if @ctor
            throw new SyntaxError 'cannot define more than one constructor in a class'
          if func.bound
            throw new SyntaxError 'cannot define a constructor as a bound function'
          if func instanceof Code
            assign = @ctor = func
          else
