aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmlcompiler/qqmljsbasicblocks.cpp
diff options
context:
space:
mode:
authorOlivier De Cannière <olivier.decanniere@qt.io>2023-11-16 11:02:14 +0100
committerOlivier De Cannière <olivier.decanniere@qt.io>2023-11-24 18:34:03 +0100
commitfc4ee77116624c784d8c42f2b8e5dbf2f78b6d89 (patch)
tree73e9bfab34bd73fe190d83b34f14a064b2daf67b /src/qmlcompiler/qqmljsbasicblocks.cpp
parent5dda854129d6034da4c053e777c8a37c0fb264f1 (diff)
Compiler: Add initial support for optional chaining
This patch implements the GetOptionalLookup instruction in the compiler. This enables the use of optional chains. Fixes: QTBUG-111283 Change-Id: I265f611415a946468b828b9d41f549acfcc76233 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qmlcompiler/qqmljsbasicblocks.cpp')
-rw-r--r--src/qmlcompiler/qqmljsbasicblocks.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/qmlcompiler/qqmljsbasicblocks.cpp b/src/qmlcompiler/qqmljsbasicblocks.cpp
index fc8f5b91fe..31e9be2dea 100644
--- a/src/qmlcompiler/qqmljsbasicblocks.cpp
+++ b/src/qmlcompiler/qqmljsbasicblocks.cpp
@@ -231,6 +231,12 @@ void QQmlJSBasicBlocks::generate_IteratorNext(int value, int offset)
processJump(offset, Conditional);
}
+void QQmlJSBasicBlocks::generate_GetOptionalLookup(int index, int offset)
+{
+ Q_UNUSED(index);
+ processJump(offset, Conditional);
+}
+
void QQmlJSBasicBlocks::generate_Ret()
{
auto currentBlock = basicBlockForInstruction(m_basicBlocks, currentInstructionOffset());