v8/test/mjsunit/harmony/classes-lazy-parsing.js
arv 8c06568186 [es6] super.prop, eval and lazy functions
We used to only store the uses_super_property in the preparse data
logger. Let the logger use NeedsHomeObject instead.

BUG=v8:3768
LOG=N
R=wingo, adamk

Review URL: https://codereview.chromium.org/1164073003

Cr-Commit-Position: refs/heads/master@{#28806}
2015-06-04 21:16:32 +00:00

35 lines
642 B
JavaScript

// Copyright 2014 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.
// Flags: --harmony-classes --min-preparse-length=0
'use strict';
class Base {
m() {
return 42;
}
}
class Derived extends Base {
m() {
return super.m();
}
evalM() {
return eval('super.m()');
}
}
assertEquals(42, new Derived().m());
assertEquals(42, new Derived().evalM());
class LazyDerived extends Base {
constructor() {
eval('super()');
}
}
assertInstanceof(new LazyDerived(), LazyDerived);
assertInstanceof(new LazyDerived(), Base);