// Tests that the module dependency scan properly outputs diagnostics which // were collected during the dependency scan. // RUN: split-file %s %t // RUN: not %clang -### -fmodules -fmodules-driver -Rmodules-driver \ // RUN: -fmodule-map-file=%t/module.modulemap %t/main.cpp 2>&1 \ // RUN: -fmodules-cache-path=%t/modules-cache \ // RUN: | FileCheck --check-prefixes=CHECK %s //--- module.modulemap module a { header "a.h" } //--- a.h // Diagnostics collected during the dependency scan need to be translated to // and from a representation that can outlive the compiler invocation they // were generated by. // We test that the diagnostics source location is translated correctly: //----10|-------20|--------30| #include /*just some space*/ "doesnotexist.h" // CHECK: a.h:6:30: fatal error: 'doesnotexist.h' file not found //--- main.cpp #include "a.h" // CHECK: clang: error: failed to perform dependency scan