diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-05-14 14:12:33 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-05-14 19:32:42 +0000 |
commit | c4ef0d6e4b5bb7de7b0ab08928d693988a60b25d (patch) | |
tree | 0ff9682886da081c2d8e89becfd90cfb7083540d /src/qml/compiler/qv4instr_moth_p.h | |
parent | d8eade23bc4fdd7040204f4374ef26975b94ea0a (diff) |
Call iterator.return when required in destructuring assignments
Array destructuring assignments require a call to iterator.return if
the iterator hasn't been exhausted during destructuring.
Change-Id: I39fe4bc01bef6fb2ad3bda92caf6779fbbddc8e2
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/compiler/qv4instr_moth_p.h')
-rw-r--r-- | src/qml/compiler/qv4instr_moth_p.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/qml/compiler/qv4instr_moth_p.h b/src/qml/compiler/qv4instr_moth_p.h index b4eaae4f6c..83ff11a128 100644 --- a/src/qml/compiler/qv4instr_moth_p.h +++ b/src/qml/compiler/qv4instr_moth_p.h @@ -123,6 +123,7 @@ QT_BEGIN_NAMESPACE #define INSTR_PopContext(op) INSTRUCTION(op, PopContext, 1, reg) #define INSTR_GetIterator(op) INSTRUCTION(op, GetIterator, 1, iterator) #define INSTR_IteratorNext(op) INSTRUCTION(op, IteratorNext, 1, value) +#define INSTR_IteratorClose(op) INSTRUCTION(op, IteratorClose, 1, done) #define INSTR_DestructureRestElement(op) INSTRUCTION(op, DestructureRestElement, 0) #define INSTR_DeleteMember(op) INSTRUCTION(op, DeleteMember, 2, member, base) #define INSTR_DeleteSubscript(op) INSTRUCTION(op, DeleteSubscript, 2, base, index) @@ -252,6 +253,7 @@ QT_BEGIN_NAMESPACE F(PopContext) \ F(GetIterator) \ F(IteratorNext) \ + F(IteratorClose) \ F(DestructureRestElement) \ F(DeleteMember) \ F(DeleteSubscript) \ |