================ @@ -166,8 +167,15 @@ ContentCache::getBufferOrNone(DiagnosticsEngine &Diag, FileManager &FM, // Unless this is a named pipe (in which case we can handle a mismatch), // check that the file's size is the same as in the file entry (which may // have come from a stat cache). +#ifndef __MVS__ if (!ContentsEntry->isNamedPipe() && Buffer->getBufferSize() != (size_t)ContentsEntry->getSize()) { +#else + // The buffer will always be larger than the file size on z/OS in the presence + // of characters outside the base character set. + if (!ContentsEntry->isNamedPipe() && + Buffer->getBufferSize() < (size_t)ContentsEntry->getSize()) { ---------------- perry-ca wrote:
To remove the #if we could just replace the != with < and then add an assert: ```cpp assert(Buffer->getBufferSize() <= (size_t)ContentsEntry->getSize()); f (!ContentsEntry->isNamedPipe() && Buffer->getBufferSize() < (size_t)ContentsEntry->getSize()) { ``` https://github.com/llvm/llvm-project/pull/98652 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits