mirror of
https://github.com/intel/llvm.git
synced 2026-01-26 12:26:52 +08:00
Use a simpler set of mock headers for the vfs+modules crash recovery tests.
The System/ mock is large and too complex for this test. It can cause the tests to fail in mysterious ways as it depends on the resource dir being present, which is not really supported for driver tests (using %clang instead of %clang_cc1). Copy the tree and trim out all the %unnecessary fat. llvm-svn: 263718
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
module cstd [system] {
|
||||
// Only in system headers directory
|
||||
module stdio {
|
||||
header "stdio.h"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
typedef struct { int id; } FILE;
|
||||
int fprintf(FILE*restrict, const char* restrict format, ...);
|
||||
extern FILE *__stderrp;
|
||||
@@ -0,0 +1,2 @@
|
||||
// tcl-private/header.h
|
||||
#define TCL_PRIVATE 1
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
// RUN: rm -rf %t
|
||||
// RUN: mkdir -p %t/i %t/m %t %t/sysroot
|
||||
// RUN: cp -a %S/Inputs/System/usr %t/i/
|
||||
// RUN: cp -a %S/Inputs/crash-recovery/usr %t/i/
|
||||
// RUN: ln -s include/tcl-private %t/i/usr/x
|
||||
|
||||
// RUN: not env FORCE_CLANG_DIAGNOSTICS_CRASH= TMPDIR=%t TEMP=%t TMP=%t \
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
// RUN: mkdir -p %t/i %t/m %t
|
||||
|
||||
// RUN: not env FORCE_CLANG_DIAGNOSTICS_CRASH= TMPDIR=%t TEMP=%t TMP=%t \
|
||||
// RUN: %clang -fsyntax-only %s -I %S/Inputs/System -isysroot %/t/i/ \
|
||||
// RUN: %clang -fsyntax-only %s -I %S/Inputs/crash-recovery -isysroot %/t/i/ \
|
||||
// RUN: -fmodules -fmodules-cache-path=%t/m/ 2>&1 | FileCheck %s
|
||||
|
||||
// RUN: FileCheck --check-prefix=CHECKSRC %s -input-file %t/crash-vfs-*.m
|
||||
@@ -17,7 +17,7 @@
|
||||
// RUN: FileCheck --check-prefix=CHECKYAML %s -input-file \
|
||||
// RUN: %t/crash-vfs-*.cache/vfs/vfs.yaml
|
||||
// RUN: find %t/crash-vfs-*.cache/vfs | \
|
||||
// RUN: grep "Inputs/System/usr/include/stdio.h" | count 1
|
||||
// RUN: grep "Inputs/crash-recovery/usr/include/stdio.h" | count 1
|
||||
|
||||
#include "usr/././//////include/../include/./././../include/stdio.h"
|
||||
|
||||
@@ -37,12 +37,12 @@
|
||||
// CHECKSH: "-ivfsoverlay" "crash-vfs-{{[^ ]*}}.cache/vfs/vfs.yaml"
|
||||
|
||||
// CHECKYAML: 'type': 'directory'
|
||||
// CHECKYAML: 'name': "{{[^ ]*}}/Inputs/System/usr/include",
|
||||
// CHECKYAML: 'name': "{{[^ ]*}}/Inputs/crash-recovery/usr/include",
|
||||
// CHECKYAML-NEXT: 'contents': [
|
||||
// CHECKYAML-NEXT: {
|
||||
// CHECKYAML-NEXT: 'type': 'file',
|
||||
// CHECKYAML-NEXT: 'name': "module.map",
|
||||
// CHECKYAML-NEXT: 'external-contents': "{{[^ ]*}}/Inputs/System/usr/include/module.map"
|
||||
// CHECKYAML-NEXT: 'external-contents': "{{[^ ]*}}/Inputs/crash-recovery/usr/include/module.map"
|
||||
// CHECKYAML-NEXT: },
|
||||
|
||||
// Replace the paths in the YAML files with relative ".." traversals
|
||||
@@ -52,7 +52,7 @@
|
||||
// RUN: sed -e "s@usr/include@usr/include/../include@g" \
|
||||
// RUN: %t/crash-vfs-*.cache/vfs/vfs.yaml > %t/vfs.yaml
|
||||
// RUN: unset FORCE_CLANG_DIAGNOSTICS_CRASH
|
||||
// RUN: %clang -E %s -I %S/Inputs/System -isysroot %/t/i/ \
|
||||
// RUN: %clang -E %s -I %S/Inputs/crash-recovery -isysroot %/t/i/ \
|
||||
// RUN: -ivfsoverlay %t/vfs.yaml -fmodules \
|
||||
// RUN: -fmodules-cache-path=%t/m/ 2>&1 \
|
||||
// RUN: | FileCheck %s --check-prefix=CHECKOVERLAY
|
||||
|
||||
Reference in New Issue
Block a user