Преглед изворни кода

[spirv] Handle error gracefully in createExternVar.

Ehsan Nasiri пре 6 година
родитељ
комит
dfbb130d47
1 измењених фајлова са 2 додато и 2 уклоњено
  1. 2 2
      tools/clang/lib/SPIRV/DeclResultIdMapper.cpp

+ 2 - 2
tools/clang/lib/SPIRV/DeclResultIdMapper.cpp

@@ -637,8 +637,8 @@ SpirvVariable *DeclResultIdMapper::createExternVar(const VarDecl *var) {
     if (astDecls.count(var) == 0)
       createGlobalsCBuffer(var);
 
-    assert(isa<SpirvVariable>(astDecls[var].instr));
-    return cast<SpirvVariable>(astDecls[var].instr);
+    auto *varInstr = astDecls[var].instr;
+    return varInstr ? cast<SpirvVariable>(varInstr) : nullptr;
   }
 
   const auto type = var->getType();