summaryrefslogtreecommitdiff
path: root/source/slang/slang-emit-c-like.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2020-06-24 18:09:40 -0700
committerYong He <yonghe@outlook.com>2020-06-24 20:25:49 -0700
commitffa9a3575ff888dc494ba4878f52441c64a9e08c (patch)
tree5445e7666f076ac6f61a6be8b045a09d7302085c /source/slang/slang-emit-c-like.cpp
parent161c525c56dfd4feb3db528f09169412d0b7ed55 (diff)
Fix `lowerFuncType` and small bug fixes.
Diffstat (limited to 'source/slang/slang-emit-c-like.cpp')
-rw-r--r--source/slang/slang-emit-c-like.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/source/slang/slang-emit-c-like.cpp b/source/slang/slang-emit-c-like.cpp
index faf7b8c1d..516a8ff22 100644
--- a/source/slang/slang-emit-c-like.cpp
+++ b/source/slang/slang-emit-c-like.cpp
@@ -305,7 +305,8 @@ void CLikeSourceEmitter::emitWitnessTable(IRWitnessTable* witnessTable)
void CLikeSourceEmitter::emitInterface(IRInterfaceType* interfaceType)
{
SLANG_UNUSED(interfaceType);
- SLANG_DIAGNOSE_UNEXPECTED(getSink(), SourceLoc(), "Unimplemented emit: IROpInterfaceType.");
+ // By default, don't emit anything for interface types.
+ // This behavior is overloaded by concrete emitters.
}
void CLikeSourceEmitter::emitTypeImpl(IRType* type, const StringSliceLoc* nameAndLoc)
@@ -2289,7 +2290,6 @@ void CLikeSourceEmitter::defaultEmitInstExpr(IRInst* inst, const EmitOpInfo& inO
m_writer->emit(")");
}
break;
-
default:
diagnoseUnhandledInst(inst);
break;
@@ -3654,6 +3654,8 @@ void CLikeSourceEmitter::ensureGlobalInst(ComputeEmitActionsContext* ctx, IRInst
if (!m_compileRequest->allowDynamicCode)
return;
break;
+
+ case kIROp_InterfaceRequirementEntry:
case kIROp_Generic:
return;