jimingham wrote:

Two things.  First off, adding the -I 0 option did indeed fix a failure.

In the first run you cited, three tests failed:

FAIL: LLDB (/b/s/w/ir/x/w/cipd/clang/bin/clang-x86_64) :: 
test_stop_hooks_scripted_auto_continue 
(TestStopHookScripted.TestStopHooks.test_stop_hooks_scripted_auto_continue)
FAIL: LLDB (/b/s/w/ir/x/w/cipd/clang/bin/clang-x86_64) :: 
test_stop_hooks_scripted_right_func 
(TestStopHookScripted.TestStopHooks.test_stop_hooks_scripted_right_func)
FAIL: LLDB (/b/s/w/ir/x/w/cipd/clang/bin/clang-x86_64) :: 
test_stop_hooks_scripted_wrong_func 
(TestStopHookScripted.TestStopHooks.test_stop_hooks_scripted_wrong_func)

But then in the second log after you patch only the last two tests failed.  So 
the addition did in fact make the first test pass.  

That makes sense because those other two failing tests don't use the same 
command string as the first one.  They use the command string on line 148 in 
the test. So you also need to add the -I 0 to the command line  in 
`stop_hooks_scripted` in the test file.

But still, those failures are odd.  The only difference between these two 
failing tests and two that pass:

PASS: LLDB (/b/s/w/ir/x/w/cipd/clang/bin/clang-x86_64) :: 
test_stop_hooks_scripted_right_lines 
(TestStopHookScripted.TestStopHooks.test_stop_hooks_scripted_right_lines)
PASS: LLDB (/b/s/w/ir/x/w/cipd/clang/bin/clang-x86_64) :: 
test_stop_hooks_scripted_wrong_lines 
(TestStopHookScripted.TestStopHooks.test_stop_hooks_scripted_wrong_lines)

are that the failing tests pass in a function name filter to determine when the 
stop-hook should fire, and the passing tests pass in a line-range filter.  In 
both failures the stop hook failure symptom is that the stop-hook got to fire 
one more time than expected.  The only change in this patch was adding one more 
place where the stop-hook might fire - "at the entry point", but in the case of 
these tests, that "entry point" firing shouldn't matter because the "entry 
point" stop won't pass the filter.  Somehow, in your case, that's not true.

Given that it did make the first test pass, I'm guessing adding the `-I 0` to 
the other `target stop-hook add` command in the test file will make those tests 
pass as well.

But where was that "entry point" stop happening on your system such that both 
file and line number filters correctly reject it, but it passes BOTH the filter 
on function name `main` AND the filter on function name `step_out_of_me`?




https://github.com/llvm/llvm-project/pull/137410
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to