]> granicus.if.org Git - clang/commit
[Frontend/Modules] Show diagnostics on prebuilt module configuration mismatch too
authorDavid Blaikie <dblaikie@gmail.com>
Thu, 8 Nov 2018 20:47:30 +0000 (20:47 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Thu, 8 Nov 2018 20:47:30 +0000 (20:47 +0000)
commit3d002375f1d6cb51cff6e40d00528cb3ce75a302
tree7e220da1f675a57368598dcc99dd17fe9c32f040
parent4f6cad78cf538ef8c8177ac4bc4e58858a8a3843
[Frontend/Modules] Show diagnostics on prebuilt module configuration mismatch too

The current version only emits  the below error for a module (attempted to be loaded) from the `prebuilt-module-path`:

```
error: module file blabla.pcm cannot be loaded due to a configuration mismatch with the current compilation [-Wmodule-file-config-mismatch]
```

With this change, if the prebuilt module is used, we allow the proper diagnostic behind the configuration mismatch to be shown.

```
error: POSIX thread support was disabled in PCH file but is currently enabled
error: module file blabla.pcm cannot be loaded due to a configuration mismatch with the current compilation [-Wmodule-file-config-mismatch]
```

(A few lines later an error is emitted anyways, so there is no reason not to complain for configuration mismatches if a config mismatch is found and kills the build.)

Reviewed By: dblaikie

Tags: #clang

Differential Revision: https://reviews.llvm.org/D53334

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346439 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Frontend/CompilerInstance.cpp
test/Modules/mismatch-diagnostics.cpp [new file with mode: 0644]