summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ast-base.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-ast-base.cpp')
-rw-r--r--source/slang/slang-ast-base.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/source/slang/slang-ast-base.cpp b/source/slang/slang-ast-base.cpp
index 7fa0a8886..60be7a563 100644
--- a/source/slang/slang-ast-base.cpp
+++ b/source/slang/slang-ast-base.cpp
@@ -22,11 +22,14 @@ void NodeBase::_initDebug(ASTNodeType inAstNodeType, ASTBuilder* inAstBuilder)
}
DeclRefBase* Decl::getDefaultDeclRef()
{
- auto astBuilder = getCurrentASTBuilder();
- if (astBuilder && astBuilder->getEpoch() != m_defaultDeclRefEpoch || !m_defaultDeclRef)
+ if (auto astBuilder = getCurrentASTBuilder())
{
- m_defaultDeclRef = astBuilder->getOrCreate<DirectDeclRef>(this);
- m_defaultDeclRefEpoch = astBuilder->getEpoch();
+ const Index currentEpoch = astBuilder->getEpoch();
+ if (currentEpoch != m_defaultDeclRefEpoch || !m_defaultDeclRef)
+ {
+ m_defaultDeclRef = astBuilder->getOrCreate<DirectDeclRef>(this);
+ m_defaultDeclRefEpoch = currentEpoch;
+ }
}
return m_defaultDeclRef;
}