summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/FrontendActions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Frontend/FrontendActions.cpp')
-rw-r--r--clang/lib/Frontend/FrontendActions.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/clang/lib/Frontend/FrontendActions.cpp b/clang/lib/Frontend/FrontendActions.cpp
index 5f91ed0a974..5ffe65f9f2a 100644
--- a/clang/lib/Frontend/FrontendActions.cpp
+++ b/clang/lib/Frontend/FrontendActions.cpp
@@ -599,16 +599,15 @@ void DumpTokensAction::ExecuteAction() {
void GeneratePTHAction::ExecuteAction() {
CompilerInstance &CI = getCompilerInstance();
- if (CI.getFrontendOpts().OutputFile.empty() ||
- CI.getFrontendOpts().OutputFile == "-") {
- // FIXME: Don't fail this way.
- // FIXME: Verify that we can actually seek in the given file.
- llvm::report_fatal_error("PTH requires a seekable file for output!");
- }
llvm::raw_fd_ostream *OS = CI.createDefaultOutputFile(true, getCurrentFile());
if (!OS)
return;
+ if (!OS->supportsSeeking()) {
+ // FIXME: Don't fail this way.
+ llvm::report_fatal_error("PTH requires a seekable file for output!");
+ }
+
CacheTokens(CI.getPreprocessor(), OS);
}
OpenPOWER on IntegriCloud