diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2018-08-21 16:51:17 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2018-08-28 17:50:41 +0000 |
commit | bead103138c0d9dff3c9f927c9c4e2f44ee7db4c (patch) | |
tree | 32b23e94d07b5169758b426b1ad614e240dae9cd /tests | |
parent | ec6996bcbed583177952f81f5bfaf1d67eb573ad (diff) |
Implement the dead temporal zone
With const and let it is possible to access the declared member before
initialization. This is expected to throw a type reference error at
run-time.
We initialize such variables with the empty value when entering their
scope and check upon access for that. For locals we place the lexically
scoped variables at the end. For register allocated lexical variables we
group them into one batch and remember the index/size.
Change-Id: Icb493ee0de0525bb682e1bc58981a4dfd33f750e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/qml/ecmascripttests/TestExpectations | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/tests/auto/qml/ecmascripttests/TestExpectations b/tests/auto/qml/ecmascripttests/TestExpectations index b303592e23..2848317683 100644 --- a/tests/auto/qml/ecmascripttests/TestExpectations +++ b/tests/auto/qml/ecmascripttests/TestExpectations @@ -827,9 +827,6 @@ built-ins/isNaN/toprimitive-not-callable-throws.js fails language/computed-property-names/class/static/method-number.js fails language/computed-property-names/class/static/method-string.js fails language/computed-property-names/class/static/method-symbol.js fails -language/eval-code/direct/lex-env-no-init-cls.js fails -language/eval-code/direct/lex-env-no-init-const.js fails -language/eval-code/direct/lex-env-no-init-let.js fails language/eval-code/direct/new.target.js fails language/eval-code/direct/new.target-arrow.js fails language/eval-code/direct/new.target-fn.js fails @@ -852,9 +849,6 @@ language/eval-code/direct/var-env-global-lex-non-strict.js sloppyFails language/eval-code/direct/var-env-lower-lex-catch-non-strict.js sloppyFails language/eval-code/direct/var-env-lower-lex-non-strict.js sloppyFails language/eval-code/indirect/always-non-strict.js strictFails -language/eval-code/indirect/lex-env-no-init-cls.js fails -language/eval-code/indirect/lex-env-no-init-const.js fails -language/eval-code/indirect/lex-env-no-init-let.js fails language/eval-code/indirect/new.target.js fails language/eval-code/indirect/non-definable-function-with-function.js sloppyFails language/eval-code/indirect/non-definable-function-with-variable.js sloppyFails @@ -904,7 +898,6 @@ language/expressions/assignment/S11.13.1_A7_T2.js fails language/expressions/assignment/S11.13.1_A7_T3.js fails language/expressions/assignment/destructuring/iterator-destructuring-property-reference-target-evaluation-order.js fails language/expressions/assignment/destructuring/keyed-destructuring-property-reference-target-evaluation-order.js fails -language/expressions/assignment/dstr-array-elem-init-let.js fails language/expressions/assignment/dstr-array-elem-iter-rtrn-close-err.js fails language/expressions/assignment/dstr-array-elem-iter-rtrn-close-null.js fails language/expressions/assignment/dstr-array-elem-iter-rtrn-close.js fails @@ -930,9 +923,7 @@ language/expressions/assignment/dstr-array-rest-lref-err.js fails language/expressions/assignment/dstr-array-rest-put-let.js fails language/expressions/assignment/dstr-obj-empty-null.js fails language/expressions/assignment/dstr-obj-empty-undef.js fails -language/expressions/assignment/dstr-obj-id-init-let.js fails language/expressions/assignment/dstr-obj-id-put-let.js fails -language/expressions/assignment/dstr-obj-prop-elem-init-let.js fails language/expressions/assignment/dstr-obj-prop-put-let.js fails language/expressions/assignment/fn-name-lhs-cover.js fails language/expressions/assignment/fn-name-lhs-member.js fails @@ -1256,22 +1247,9 @@ language/global-code/script-decl-var.js fails language/identifiers/other_id_continue.js fails language/identifiers/other_id_start-escaped.js fails language/identifiers/other_id_start.js fails -language/module-code/instn-iee-bndng-cls.js strictFails -language/module-code/instn-iee-bndng-const.js strictFails -language/module-code/instn-iee-bndng-let.js strictFails -language/module-code/instn-local-bndng-cls.js strictFails -language/module-code/instn-local-bndng-const.js strictFails -language/module-code/instn-local-bndng-export-cls.js strictFails -language/module-code/instn-local-bndng-export-const.js strictFails -language/module-code/instn-local-bndng-export-let.js strictFails -language/module-code/instn-local-bndng-let.js strictFails -language/module-code/instn-named-bndng-cls.js strictFails -language/module-code/instn-named-bndng-const.js strictFails -language/module-code/instn-named-bndng-dflt-cls.js strictFails language/module-code/instn-named-bndng-dflt-expr.js strictFails language/module-code/instn-named-bndng-dflt-named.js strictFails language/module-code/instn-named-bndng-dflt-star.js strictFails -language/module-code/instn-named-bndng-let.js strictFails language/module-code/namespace/internals/delete-exported-uninit.js strictFails language/module-code/namespace/internals/enumerate-binding-uninit.js strictFails language/module-code/namespace/internals/get-own-property-str-found-uninit.js strictFails @@ -1315,9 +1293,6 @@ language/statements/class/meth-dflt-params-ref-later.js fails language/statements/class/meth-dflt-params-ref-self.js fails language/statements/class/meth-static-dflt-params-ref-later.js fails language/statements/class/meth-static-dflt-params-ref-self.js fails -language/statements/class/name-binding/in-extends-expression-assigned.js fails -language/statements/class/name-binding/in-extends-expression-grouped.js fails -language/statements/class/name-binding/in-extends-expression.js fails language/statements/class/scope-gen-meth-paramsbody-var-open.js fails language/statements/class/scope-meth-paramsbody-var-open.js fails language/statements/class/scope-setter-paramsbody-var-open.js fails @@ -1359,27 +1334,12 @@ language/statements/class/subclass/class-definition-null-proto-super.js fails language/statements/class/subclass/class-definition-null-proto-this.js fails language/statements/class/subclass/default-constructor-spread-override.js fails language/statements/class/super/in-methods.js fails -language/statements/const/block-local-closure-get-before-initialization.js fails -language/statements/const/block-local-use-before-initialization-in-declaration-statement.js fails -language/statements/const/block-local-use-before-initialization-in-prior-statement.js fails -language/statements/const/function-local-closure-get-before-initialization.js fails -language/statements/const/function-local-use-before-initialization-in-declaration-statement.js fails -language/statements/const/function-local-use-before-initialization-in-prior-statement.js fails -language/statements/const/global-closure-get-before-initialization.js fails -language/statements/const/global-use-before-initialization-in-declaration-statement.js fails -language/statements/const/global-use-before-initialization-in-prior-statement.js fails language/statements/do-while/tco-body.js strictFails -language/statements/for-in/head-const-bound-names-fordecl-tdz.js fails -language/statements/for-in/head-let-bound-names-fordecl-tdz.js fails language/statements/for-in/head-lhs-let.js sloppyFails language/statements/for-in/head-var-bound-names-let.js sloppyFails language/statements/for-in/identifier-let-allowed-as-lefthandside-expression-not-strict.js sloppyFails -language/statements/for-in/scope-body-lex-open.js fails -language/statements/for-in/scope-head-lex-close.js fails -language/statements/for-in/scope-head-lex-open.js fails language/statements/for-of/body-dstr-assign-error.js fails language/statements/for-of/body-put-error.js fails -language/statements/for-of/dstr-array-elem-init-let.js fails language/statements/for-of/dstr-array-elem-iter-rtrn-close-err.js fails language/statements/for-of/dstr-array-elem-iter-rtrn-close-null.js fails language/statements/for-of/dstr-array-elem-iter-rtrn-close.js fails @@ -1405,23 +1365,16 @@ language/statements/for-of/dstr-array-rest-lref-err.js fails language/statements/for-of/dstr-array-rest-put-let.js fails language/statements/for-of/dstr-obj-empty-null.js fails language/statements/for-of/dstr-obj-empty-undef.js fails -language/statements/for-of/dstr-obj-id-init-let.js fails language/statements/for-of/dstr-obj-id-put-let.js fails -language/statements/for-of/dstr-obj-prop-elem-init-let.js fails language/statements/for-of/dstr-obj-prop-put-let.js fails language/statements/for-of/generator-close-via-continue.js fails language/statements/for-of/generator-close-via-return.js fails language/statements/for-of/generator-close-via-throw.js fails -language/statements/for-of/head-const-bound-names-fordecl-tdz.js fails -language/statements/for-of/head-let-bound-names-fordecl-tdz.js fails language/statements/for-of/head-var-bound-names-let.js sloppyFails language/statements/for-of/iterator-close-via-continue.js fails language/statements/for-of/iterator-close-via-return.js fails language/statements/for-of/iterator-close-via-throw.js fails language/statements/for-of/iterator-next-reference.js fails -language/statements/for-of/scope-body-lex-open.js fails -language/statements/for-of/scope-head-lex-close.js fails -language/statements/for-of/scope-head-lex-open.js fails language/statements/for-of/yield-star-from-catch.js fails language/statements/for-of/yield-star-from-finally.js fails language/statements/for-of/yield-star-from-try.js fails @@ -1465,19 +1418,9 @@ language/statements/generators/yield-star-before-newline.js fails language/statements/if/tco-else-body.js strictFails language/statements/if/tco-if-body.js strictFails language/statements/labeled/tco.js strictFails -language/statements/let/block-local-closure-get-before-initialization.js fails language/statements/let/block-local-closure-set-before-initialization.js fails -language/statements/let/block-local-use-before-initialization-in-declaration-statement.js fails -language/statements/let/block-local-use-before-initialization-in-prior-statement.js fails -language/statements/let/function-local-closure-get-before-initialization.js fails language/statements/let/function-local-closure-set-before-initialization.js fails -language/statements/let/function-local-use-before-initialization-in-declaration-statement.js fails -language/statements/let/function-local-use-before-initialization-in-prior-statement.js fails -language/statements/let/global-closure-get-before-initialization.js fails language/statements/let/global-closure-set-before-initialization.js fails -language/statements/let/global-use-before-initialization-in-declaration-statement.js fails -language/statements/let/global-use-before-initialization-in-prior-statement.js fails -language/statements/let/syntax/let.js fails language/statements/return/tco.js strictFails language/statements/switch/scope-lex-open-case.js fails language/statements/switch/scope-lex-open-dflt.js fails |