summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ast-modifier.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-12-12 14:07:35 -0800
committerGitHub <noreply@github.com>2023-12-12 14:07:35 -0800
commit92f21de580e16a37600f082c0968913111f5ef91 (patch)
tree3bc7cd132d9d667a4971dff080503648f358e6b3 /source/slang/slang-ast-modifier.cpp
parentec0224edc3a867bbf059e790ad7b2a1a881a0705 (diff)
Add check for invalid use of modifiers. (#3402)
* Add check for invalid use of modifiers. * Fixes. * Add test. --------- Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-ast-modifier.cpp')
-rw-r--r--source/slang/slang-ast-modifier.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/slang/slang-ast-modifier.cpp b/source/slang/slang-ast-modifier.cpp
index 84046a601..ba30a547d 100644
--- a/source/slang/slang-ast-modifier.cpp
+++ b/source/slang/slang-ast-modifier.cpp
@@ -10,4 +10,16 @@ const OrderedDictionary<DeclRefBase*, SubtypeWitness*>& DifferentiableAttribute:
m_mapToIDifferentiableWitness.add(m_typeToIDifferentiableWitnessMappings[i].key, m_typeToIDifferentiableWitnessMappings[i].value);
return m_mapToIDifferentiableWitness;
}
+
+void printDiagnosticArg(StringBuilder& sb, Modifier* modifier)
+{
+ if (!modifier)
+ return;
+ if (modifier->keywordName && modifier->keywordName->text.getLength())
+ sb << modifier->keywordName->text;
+ if (auto hlslSemantic = as<HLSLSemantic>(modifier))
+ sb << hlslSemantic->name.getContent();
+ return;
+}
+
} // namespace Slang