llvm-project/clang/test/Misc
Duncan P. N. Exon Smith 245218bb35 Basic: Support named pipes natively in SourceManager and FileManager
Handle named pipes natively in SourceManager and FileManager, removing a
call to `SourceManager::overrideFileContents` in
`CompilerInstance::InitializeSourceManager` (removing a blocker for
sinking the content cache to FileManager (which will incidently sink
this new named pipe logic with it)).

SourceManager usually checks if the file entry's size matches the
eventually loaded buffer, but that's now skipped for named pipes since
the `stat` won't reflect the full size.  Since we can't trust
`ContentsEntry->getSize()`, we also need shift the check for files that
are too large until after the buffer is loaded... and load the buffer
immediately in `createFileID` so that no client gets a bad value from
`ContentCache::getSize`. `FileManager::getBufferForFile` also needs to
treat these files as volatile when loading the buffer.

Native support in SourceManager / FileManager means that named pipes can
also be `#include`d, and clang/test/Misc/dev-fd-fs.c was expanded to
check for that.

This is a new version of 3b18a594c7, which
was reverted in b346322019 since it was
missing the `SourceManager` changes.

Differential Revision: https://reviews.llvm.org/D92531
2020-12-23 14:57:41 -08:00
..
Inputs Fixed dia file 2019-11-09 18:31:17 +01:00
amdgcn.languageOptsOpenCL.cl [OpenCL] Remove unused extensions 2020-10-22 17:01:31 +01:00
attr-source-range.cpp
backend-optimization-failure-nodbg.cpp [Unroll/UnrollAndJam/Vectorizer/Distribute] Add followup loop attributes. 2018-12-12 17:32:52 +00:00
backend-optimization-failure.cpp [Unroll/UnrollAndJam/Vectorizer/Distribute] Add followup loop attributes. 2018-12-12 17:32:52 +00:00
backend-resource-limit-diagnostics.cl
backend-stack-frame-diagnostics-fallback.cpp Ensure there is stack usage in stack size warning test 2019-05-03 19:04:14 +00:00
backend-stack-frame-diagnostics.cpp
caret-diags-macros.c
caret-diags-multiline.cpp
caret-diags-scratch-buffer.c
cc1as-asm-debug.s [DWARF] Make -g with empty assembler source work better. 2019-03-01 20:58:04 +00:00
cc1as-asm.s
cc1as-compress.s [Driver] Clean up -gz & --compress-debug-sections 2020-10-19 23:06:33 -07:00
cc1as-split-dwarf.s [Clang] Rename -split-dwarf-file to -split-dwarf-output 2019-06-15 14:07:43 +00:00
dev-fd-fs.c Basic: Support named pipes natively in SourceManager and FileManager 2020-12-23 14:57:41 -08:00
diag-aka-types.cpp [AST] Print a<b<c>> without extra spaces in C++11 or later. 2020-03-26 09:53:54 +01:00
diag-format.c Remove extraneous space in MSVC-style diagnostic output 2019-02-19 16:58:25 +00:00
diag-greatergreater.cpp
diag-inline-namespace.cpp Suppress printing of inline namespace names in diagnostics by default, 2020-11-11 15:05:51 -08:00
diag-line-wrapping.cpp [Driver] Don't pass -fmessage-length=0 to CC1 2020-03-31 17:12:08 -07:00
diag-macro-backtrace.c
diag-macro-backtrace2.c [test] Use %clang_cc1 instead of %clang -cc1 2019-09-27 05:37:06 +00:00
diag-mapping.c
diag-mapping2.c
diag-null-bytes-in-line.cpp
diag-presumed.c
diag-special-chars.c
diag-template-diffing-color.cpp
diag-template-diffing-cxx98.cpp
diag-template-diffing.cpp [Sema] Improved diagnostic for qualifiers in reference binding 2019-06-21 10:50:02 +00:00
diag-template.cpp Suppress trailing template arguments equivalent to default arguments 2020-11-12 21:10:34 -08:00
diag-trailing-null-bytes.cpp
diag-verify.cpp
diagnostic-crash.cpp
driver-verify.c [test] Use %clang_cc1 instead of %clang -cc1 2019-09-27 05:37:06 +00:00
emit-html-insert.c
emit-html.c
error-limit-multiple-notes.cpp
error-limit.c
explicit.cpp [clang]: Remove assertion which checks explicit declaration 2020-08-20 18:15:43 -07:00
find-diagnostic-id.c
freebsd-arm-size_t.c
include-stack-for-note-flag.cpp
integer-literal-printing.cpp Consistent spelling in diagnostics: {l,r}value instead of {l,r}-value 2020-11-15 18:05:11 +01:00
interpreter.c
languageOptsOpenCL.cl
loop-opt-setup.c [test] Fix Other/new-pass-manager.ll & clang/test/Misc/loop-opt-setup.c 2020-11-06 21:55:11 -08:00
macro-backtrace.c
message-length.c [Driver] Don't pass -fmessage-length=0 to CC1 2020-03-31 17:12:08 -07:00
no-warn-in-system-macro.c Fix isInSystemMacro in presence of macro and pasted token 2019-05-16 12:40:00 +00:00
no-warn-in-system-macro.c.inc Fix isInSystemMacro to handle pasted macros 2019-02-01 06:11:44 +00:00
nvptx.languageOptsOpenCL.cl [OpenCL] Remove unused extensions 2020-10-22 17:01:31 +01:00
pr32207.c [clang][NewPM] Add -fno-experimental-new-pass-manager to tests 2019-06-21 16:03:06 +00:00
pragma-attribute-cxx.cpp [NFC] Remove string parameter of annotation attribute from AST childs. 2020-11-09 16:39:59 +01:00
pragma-attribute-objc.m [NFC] Remove string parameter of annotation attribute from AST childs. 2020-11-09 16:39:59 +01:00
pragma-attribute-strict-subjects.c
pragma-attribute-supported-attributes-list.test [Clang] Make nomerge attribute a function attribute as well as a statement attribute. 2020-12-17 07:45:38 -08:00
predefines.c
printer.c [NewPM][PassInstrumentation] IR printing support from clang driver 2019-08-14 07:11:09 +00:00
r600.languageOptsOpenCL.cl [OpenCL] Remove unused extensions 2020-10-22 17:01:31 +01:00
reduced-diags-macros-backtrace.cpp
reduced-diags-macros.cpp
remap-file.c
serialized-diags-bcanalyzer.c
serialized-diags-driver.c
serialized-diags-frontend.c
serialized-diags-no-category.c
serialized-diags-no-issue.c
serialized-diags-really-long-text.cpp
serialized-diags-single-issue.c
serialized-diags-stable.c Fixed dia file 2019-11-09 18:31:17 +01:00
serialized-diags.c Use getLocation() in "too few/too many arguments" diagnostic 2020-02-18 11:23:17 -05:00
serialized-diags.h
serialized-diags.m
show-diag-options.c [Driver] Flip the CC1 default of -fdiagnostics-show-option 2020-03-31 21:59:27 -07:00
tabstop.c
target-invalid-cpu-note.c [AMDGPU] Add missing targets to target-invalid-cpu-note.c 2020-12-12 18:19:03 +00:00
target-parser.c
time-passes.c [test] Fix Misc/time-passes.c 2020-12-09 17:17:28 -08:00
unnecessary-elipses.cpp [Driver] Don't pass -fmessage-length=0 to CC1 2020-03-31 17:12:08 -07:00
unprintable.c [Driver] Don't pass -fmessage-length=0 to CC1 2020-03-31 17:12:08 -07:00
verify.c
warn-in-system-header.c
warn-in-system-header.h
warn-in-system-macro-def.c Fix some tests I broke in r354190 2019-02-16 01:51:19 +00:00
warn-in-system-macro-def.c.inc Fix isInSystemMacro to handle pasted macros 2019-02-01 06:11:44 +00:00
warn-sysheader.cpp
warning-flags-enabled.c
warning-flags-tree.c
warning-flags.c PR44406: Follow behavior of array bound constant folding in more recent versions of GCC. 2020-10-16 14:34:35 -07:00
warning-wall.c [clang] Update warning-wall.c test 2020-09-28 17:19:51 -07:00
win32-macho.c [Driver] Set the default win32-macho debug format to DWARF 2019-07-22 21:46:45 +00:00
working-directory.c
wrong-encoding.c
wrong-encoding2.c [Driver] Don't pass -fmessage-length=0 to CC1 2020-03-31 17:12:08 -07:00