Files
clang-p2996/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
OCHyams 4b55102aff [dexter] Change --source-root-dir and add --debugger-use-relative-paths
We want to use `DexDeclareFile` to specify paths relative to a project root
directory. The option `--source-root-dir`, prior to this patch, causes dexter
to strip the path prefix from commands before passing them to a debugger, and
appends the prefix to file paths returned from a debugger. This patch changes
the behviour of `--source-root-dir`. Relative paths in commands, made possible
with `DexDeclareFile(relative/path)`, are appended to the `--source-root-dir`
directory.

A new option, `--debugger-use-relative-paths`, can be used alongside
`--source-root-dir` to reproduce the old behaviour: all paths passed to the
debugger will be made relative to `--source-root-dir`.

I've added a regression test source_root_dir.dex for this new behaviour, and
modified the existing `--source-root-dir` regression and unit tests to use
`--debugger-use-relative-paths`.

Reviewed By: jmorse

Differential Revision: https://reviews.llvm.org/D100307
2021-05-25 13:28:06 +01:00

16 lines
432 B
C++

// REQUIRES: lldb
// UNSUPPORTED: system-windows
//
// RUN: %dexter --fail-lt 1.0 -w \
// RUN: --builder 'clang' --debugger 'lldb' \
// RUN: --cflags "-O0 -glldb -fdebug-prefix-map=%S=/changed" \
// RUN: --source-root-dir=%S --debugger-use-relative-paths -- %s
#include <stdio.h>
int main() {
int x = 42;
printf("hello world: %d\n", x); // DexLabel('check')
}
// DexExpectWatchValue('x', 42, on_line=ref('check'))