• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// RUN: rm -rf %t
2// RUN: mkdir -p %t/i %t/m %t
3
4// RUN: not env FORCE_CLANG_DIAGNOSTICS_CRASH= TMPDIR=%t TEMP=%t TMP=%t \
5// RUN: %clang -fsyntax-only %s -I %S/Inputs/module -isysroot %/t/i/    \
6// RUN: -fmodules -fmodules-cache-path=%t/m/ -DFOO=BAR 2>&1 | FileCheck %s
7
8// RUN: FileCheck --check-prefix=CHECKSRC %s -input-file %t/crash-report-*.m
9// RUN: FileCheck --check-prefix=CHECKSH %s -input-file %t/crash-report-*.sh
10// REQUIRES: crash-recovery
11
12// because of the glob (*.m, *.sh)
13// REQUIRES: shell
14
15// FIXME: This XFAIL is cargo-culted from crash-report.c. Do we need it?
16// XFAIL: mingw32
17
18@import simple;
19const int x = MODULE_MACRO;
20
21// CHECK: Preprocessed source(s) and associated run script(s) are located at:
22// CHECK-NEXT: note: diagnostic msg: {{.*}}.m
23// CHECK-NEXT: note: diagnostic msg: {{.*}}.cache
24
25// CHECKSRC: @import simple;
26// CHECKSRC: const int x = 10;
27
28// CHECKSH: # Crash reproducer
29// CHECKSH-NEXT: # Driver args: "-fsyntax-only"
30// CHECKSH-SAME: "-D" "FOO=BAR"
31// CHECKSH-NEXT: # Original command: {{.*$}}
32// CHECKSH-NEXT: "-cc1"
33// CHECKSH: "-isysroot" "{{[^"]*}}/i/"
34// CHECKSH: "-D" "FOO=BAR"
35// CHECKSH-NOT: "-fmodules-cache-path="
36// CHECKSH: "crash-report-modules-{{[^ ]*}}.m"
37// CHECKSH: "-ivfsoverlay" "crash-report-modules-{{[^ ]*}}.cache/vfs/vfs.yaml"
38