| # REQUIRES: system-darwin | |
| # Start fresh. | |
| # RUN: rm -rf %t.repro | |
| # RUN: rm -rf %t.root | |
| # RUN: rm -rf %t.clang-cache | |
| # RUN: rm -rf %t.lldb-cache | |
| # Create a temporary root we can remove later. | |
| # RUN: mkdir -p %t.root | |
| # RUN: mkdir -p %t.clang-cache | |
| # RUN: mkdir -p %t.lldb-cache | |
| # RUN: cp %S/Inputs/main.cpp %t.root | |
| # RUN: cp %S/Inputs/Foo.h %t.root | |
| # RUN: cp %S/Inputs/Bar.h %t.root | |
| # RUN: cp %S/Inputs/module.modulemap %t.root | |
| # Compile the test case form the temporary root. | |
| # RUN: %clang %t.root/main.cpp -g -fmodules -fcxx-modules -fmodules-cache-path=%t.clang-cache -o %t.root/a.out | |
| # Capture the debug session. | |
| # RUN: %lldb -x -b -o 'settings set symbols.clang-modules-cache-path %t.lldb-cache' -s %S/Inputs/ModuleCXX.in --capture --capture-path %t.repro %t.root/a.out | FileCheck %s --check-prefix CAPTURE | |
| # CAPTURE: (success = 0) | |
| # RUN: cat %t.repro/files.yaml | FileCheck %s --check-prefix YAML | |
| # YAML-DAG: Foo.h | |
| # YAML-DAG: Bar.h | |
| # YAML-DAG: module.modulemap | |
| # Remove the temporary root. | |
| # RUN: rm -rf %t.root | |
| # RUN: rm -rf %t.clang-cache | |
| # RUN: rm -rf %t.lldb-cache | |
| # Replay the debug session. | |
| # RUN: %lldb -x -b -o 'settings set symbols.clang-modules-cache-path %t.lldb-cache' -s %S/Inputs/ModuleCXX.in --replay %t.repro %t.root/a.out | FileCheck %s --check-prefix REPLAY | |
| # REPLAY: (success = 0) |