# Copyright 2015 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
*%(basename)s:7: SyntaxError: Missing initializer in destructuring declaration
for (var { a, b, c }; a && b && c; ) {}
         ^^^^^^^^^^^
SyntaxError: Missing initializer in destructuring declaration
