All of these were failing on Windows CI. Some are failing because breakpoints on template functions can't be set by name. Others are failing because of slight textual differences. Most are failing because we can't track components of a mangled name from PDB, so XFAIL those.
43 lines
886 B
Plaintext
43 lines
886 B
Plaintext
# Test the ${function.formatted-arguments} frame-format variable.
|
|
|
|
# RUN: split-file %s %t
|
|
# RUN: %build %t/main.cpp -o %t.out
|
|
# RUN: %lldb -x -b -s %t/commands.input %t.out -o exit 2>&1 \
|
|
# RUN: | FileCheck %s
|
|
|
|
#--- main.cpp
|
|
struct Foo {
|
|
void func() {}
|
|
};
|
|
|
|
void bar() {
|
|
Foo{}.func();
|
|
}
|
|
|
|
void foo(int, int x) {
|
|
bar();
|
|
}
|
|
|
|
void myFunc(char const * str,
|
|
void (*fptr)(int, int)) {
|
|
fptr(5, 10);
|
|
}
|
|
|
|
int main(int argc, char const *argv[]) {
|
|
myFunc("hello", &foo);
|
|
return 0;
|
|
}
|
|
|
|
#--- commands.input
|
|
settings set -f frame-format "custom-frame '${function.formatted-arguments}'\n"
|
|
break set -n func
|
|
|
|
run
|
|
bt
|
|
|
|
# CHECK: custom-frame '(this={{.*}})'
|
|
# CHECK: custom-frame '()'
|
|
# CHECK: custom-frame '({{.*}}=5, x=10)'
|
|
# CHECK: custom-frame '(str="hello", fptr=({{.*}}.out`{{.*}}foo(int,{{.*}}int) at main.cpp:{{[0-9]+}}))'
|
|
# CHECK: custom-frame '(argc=1, argv={{.*}})'
|