aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2024-11-25 11:05:10 +0100
committerUlf Hermann <ulf.hermann@qt.io>2024-11-29 16:41:21 +0100
commit6d5f0aea9e29cd4710adc1d8f9d58954473a85fa (patch)
tree136a353357b5148d8dc721f87732d676be65df2b /src
parent804d6ceec11e687e4fa821a2b6ceb4223597d0ab (diff)
QmlCompiler: Remove QQmlJSTypeResolver::trackedType()
We create a new QQmlJSRegisterContent in all the cases where it's used anyway. Task-number: QTBUG-124670 Change-Id: I4315b0485569c2a7fb77a78ab9d25f88d2371d96 Reviewed-by: Olivier De Cannière <olivier.decanniere@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/qmlcompiler/qqmljsstorageinitializer.cpp5
-rw-r--r--src/qmlcompiler/qqmljstypepropagator.cpp18
-rw-r--r--src/qmlcompiler/qqmljstyperesolver_p.h1
3 files changed, 7 insertions, 17 deletions
diff --git a/src/qmlcompiler/qqmljsstorageinitializer.cpp b/src/qmlcompiler/qqmljsstorageinitializer.cpp
index 04ba64a647..96a44c9eea 100644
--- a/src/qmlcompiler/qqmljsstorageinitializer.cpp
+++ b/src/qmlcompiler/qqmljsstorageinitializer.cpp
@@ -23,7 +23,7 @@ QQmlJSCompilePass::BlocksAndAnnotations QQmlJSStorageInitializer::run(Function *
if (QQmlJSRegisterContent &returnType = function->returnType; returnType.isValid()) {
if (const QQmlJSScope::ConstPtr stored
= m_typeResolver->storedType(returnType.containedType())) {
- returnType = m_pool->storedIn(returnType, m_typeResolver->trackedType(stored));
+ returnType = m_pool->storedIn(returnType, stored);
} else {
addError(QStringLiteral("Cannot store the return type %1.")
.arg(returnType.containedType()->internalName()));
@@ -38,8 +38,7 @@ QQmlJSCompilePass::BlocksAndAnnotations QQmlJSStorageInitializer::run(Function *
const QQmlJSRegisterContent original = m_typeResolver->original(content);
const QQmlJSScope::ConstPtr originalStored
= m_typeResolver->storedType(original.containedType());
- const QQmlJSScope::ConstPtr originalTracked = m_typeResolver->trackedType(originalStored);
- content = m_pool->storedIn(content, originalTracked);
+ content = m_pool->storedIn(content, originalStored);
const QQmlJSScope::ConstPtr adjustedStored
= m_typeResolver->storedType(content.containedType());
diff --git a/src/qmlcompiler/qqmljstypepropagator.cpp b/src/qmlcompiler/qqmljstypepropagator.cpp
index 4c3e6b120d..056d0a902e 100644
--- a/src/qmlcompiler/qqmljstypepropagator.cpp
+++ b/src/qmlcompiler/qqmljstypepropagator.cpp
@@ -2294,8 +2294,7 @@ void QQmlJSTypePropagator::generate_DefineArray(int argc, int args)
setAccumulator(m_typeResolver->operationType(m_typeResolver->variantListType()));
// Track all arguments as the same type.
- const QQmlJSScope::ConstPtr elementType
- = m_typeResolver->trackedType(m_typeResolver->varType());
+ const QQmlJSScope::ConstPtr elementType = m_typeResolver->varType();
for (int i = 0; i < argc; ++i)
addReadRegister(args + i, elementType);
}
@@ -2306,11 +2305,8 @@ void QQmlJSTypePropagator::generate_DefineObjectLiteral(int internalClassId, int
Q_ASSERT(argc >= classSize);
// Track each element as separate type
- for (int i = 0; i < classSize; ++i) {
- addReadRegister(
- args + i,
- m_typeResolver->trackedType(m_typeResolver->varType()));
- }
+ for (int i = 0; i < classSize; ++i)
+ addReadRegister(args + i, m_typeResolver->varType());
for (int i = classSize; i < argc; i += 3) {
// layout for remaining members is:
@@ -2319,14 +2315,10 @@ void QQmlJSTypePropagator::generate_DefineObjectLiteral(int internalClassId, int
// could not be compiled to C++. Ignore it.
// 1: name of argument
- addReadRegister(
- args + i + 1,
- m_typeResolver->trackedType(m_typeResolver->stringType()));
+ addReadRegister(args + i + 1, m_typeResolver->stringType());
// 2: value of argument
- addReadRegister(
- args + i + 2,
- m_typeResolver->trackedType(m_typeResolver->varType()));
+ addReadRegister(args + i + 2, m_typeResolver->varType());
}
setAccumulator(m_typeResolver->operationType(m_typeResolver->variantMapType()));
diff --git a/src/qmlcompiler/qqmljstyperesolver_p.h b/src/qmlcompiler/qqmljstyperesolver_p.h
index aace2d34eb..47c5bf8cfa 100644
--- a/src/qmlcompiler/qqmljstyperesolver_p.h
+++ b/src/qmlcompiler/qqmljstyperesolver_p.h
@@ -200,7 +200,6 @@ public:
bool cloneMode() const { return m_cloneMode; }
QQmlJSScope::ConstPtr storedType(const QQmlJSScope::ConstPtr &type) const;
- QQmlJSScope::ConstPtr trackedType(const QQmlJSScope::ConstPtr &type) const { return type; }
const QQmlJSScopesById &objectsById() const { return m_objectsById; }
bool canCallJSFunctions() const { return m_objectsById.signaturesAreEnforced(); }