Revert r234620 and others, "Actually check if lseek works instead of using a filename based heuristic." It was affected by r234615, which was reverted in r234721.

r234620, "Actually check if lseek works instead of using a filename based heuristic."
  r234621, "Testcase for the previous commit."
  r234718, "Suppress clang/test/PCH/emit-pth.c on win32, for now while investigating."

llvm-svn: 234730
This commit is contained in:
NAKAMURA Takumi 2015-04-13 08:43:31 +00:00
parent da46480c4d
commit 90a4877e31
2 changed files with 6 additions and 16 deletions

View File

@ -599,15 +599,15 @@ void DumpTokensAction::ExecuteAction() {
void GeneratePTHAction::ExecuteAction() {
CompilerInstance &CI = getCompilerInstance();
llvm::raw_fd_ostream *OS =
CI.createDefaultOutputFile(true, getCurrentFile());
if (!OS)
return;
if (!OS->supportsSeeking()) {
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;
CacheTokens(CI.getPreprocessor(), OS);
}

View File

@ -1,10 +0,0 @@
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-pth -o %t1 %s
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-pth -o - %s > %t2
// RUN: cmp %t1 %t2
// RUN: not %clang_cc1 -triple i386-unknown-unknown -emit-pth -o - %s 2>&1 | \
// RUN: FileCheck %s
// CHECK: PTH requires a seekable file for output!
// MSVCRT's _lseek(SEEK_CUR) doesn't return -1 for raw_ostream::SupportSeeking.
// REQUIRES: shell