diff options
Diffstat (limited to 'source/slang/slang.cpp')
| -rw-r--r-- | source/slang/slang.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/slang/slang.cpp b/source/slang/slang.cpp index 67d13c34b..c7f6c920c 100644 --- a/source/slang/slang.cpp +++ b/source/slang/slang.cpp @@ -2347,7 +2347,16 @@ CapabilitySet TargetRequest::getTargetCaps() for (auto atomVal : optionSet.getArray(CompilerOptionName::Capability)) { - auto toAdd = CapabilitySet((CapabilityName)atomVal.intValue); + CapabilitySet toAdd; + switch (atomVal.kind) + { + case CompilerOptionValueKind::Int: + toAdd = CapabilitySet(CapabilityName(atomVal.intValue)); + break; + case CompilerOptionValueKind::String: + toAdd = CapabilitySet(findCapabilityName(atomVal.stringValue.getUnownedSlice())); + break; + } if (isGLSLTarget) targetCap.addSpirvVersionFromOtherAsGlslSpirvVersion(toAdd); |
