Ver código fonte

[spirv] Stop translation if there are errors in previous stages (#632)

Lei Zhang 8 anos atrás
pai
commit
88cca461de
1 arquivos alterados com 4 adições e 0 exclusões
  1. 4 0
      tools/clang/lib/SPIRV/SPIRVEmitter.cpp

+ 4 - 0
tools/clang/lib/SPIRV/SPIRVEmitter.cpp

@@ -186,6 +186,10 @@ SPIRVEmitter::SPIRVEmitter(CompilerInstance &ci,
 }
 
 void SPIRVEmitter::HandleTranslationUnit(ASTContext &context) {
+  // Stop translating if there are errors in previous compilation stages.
+  if (context.getDiagnostics().hasErrorOccurred())
+    return;
+
   AddRequiredCapabilitiesForShaderModel();
 
   // Addressing and memory model are required in a valid SPIR-V module.