]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/Driver/crash-report-modules.m
Vendor import of clang trunk r238337:
[FreeBSD/FreeBSD.git] / test / Driver / crash-report-modules.m
1 // RUN: rm -rf %t
2 // RUN: mkdir %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 /tmp/     \
6 // RUN: -fmodules -fmodules-cache-path=/tmp/ -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;
19 const 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: # Original command: {{.*$}}
30 // CHECKSH-NEXT: "-cc1"
31 // CHECKSH: "-isysroot" "/tmp/"
32 // CHECKSH: "-D" "FOO=BAR"
33 // CHECKSH-NOT: "-fmodules-cache-path=/tmp/"
34 // CHECKSH: "crash-report-modules-{{[^ ]*}}.m"
35 // CHECKSH: "-ivfsoverlay" "crash-report-modules-{{[^ ]*}}.cache/vfs/vfs.yaml"