1// Copyright 2014 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Flags: --expose-gc --track-field-types
6
7function f1(a) { return {x:a, v:''}; }
8function f2(a) { return {x:{v:a}, v:''}; }
9function f3(a) { return {x:[], v:{v:''}}; }
10f3([0]);
11a = f1(1);
12a.__defineGetter__('v', function() { gc(); return f2(this); });
13a.v;
14f3(1);
15