<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/58681>58681</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
DExTer testing bug
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
liam-clink
</td>
</tr>
</table>
<pre>
<details>
<summary>Representative error</summary>
```
********************
FAIL: cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp (64053 of 77101)
******************** TEST 'cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp' FAILED ********************
Script:
--
: 'RUN: at line 4'; true
: 'RUN: at line 5'; "/usr/bin/python3.10" "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dexter.py" clang-opt-bisect --debugger lldb --builder clang --cflags "-O0 -glldb" --ldflags "-O0 -glldb" -- /home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp | /home/liam/Downloads/llvm-project-15.0.3.src/build/bin/FileCheck /home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp
--
Exit Code: 2
Command Output (stderr):
--
error: could not load lldb (path "<COULD NOT FIND PATH>" does not exist [result of ['lldb', '-P']])
****************************************
****************************************
****************************************
** **
** This is a bug in DExTer. **
** **
** Please report it. **
** **
****************************************
****************************************
****************************************
system:
linux
version:
DExTer 1.0.0
using Python 3.10.6 (main, Aug 10 2022, 11:40:04) [GCC 11.3.0]
args:
['/usr/bin/python3.10', '/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dexter.py', 'clang-opt-bisect', '--debugger', 'lldb', '--builder', 'clang', '--cflags', '-O0 -glldb', '--ldflags', '-O0 -glldb', '--', '/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp']
Traceback (most recent call last):
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dexter.py", line 20, in <module>
return_code = main()
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py", line 193, in main
return tool_main(context, module.Tool(context), args)
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py", line 162, in tool_main
return_code = tool.go()
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py", line 135, in go
self._run_test(self._get_test_name(options.test_path))
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dex/tools/clang_opt_bisect/Tool.py", line 155, in _run_test
heuristic = Heuristic(self.context, steps)
File "/home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/dex/heuristic/Heuristic.py", line 142, in __init__
for command in steps.commands['DexDeclareAddress']:
TypeError: 'NoneType' object is not subscriptable
FileCheck error: '<stdin>' is empty.
FileCheck command line: /home/liam/Downloads/llvm-project-15.0.3.src/build/bin/FileCheck /home/liam/Downloads/llvm-project-15.0.3.src/cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp
--
```
</details>
<details>
<summary>List of relevant failed tests</summary>
```
cross-project-tests :: debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/ctor.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/dbg-arg.c
cross-project-tests :: debuginfo-tests/dexter-tests/deferred_globals.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
cross-project-tests :: debuginfo-tests/dexter-tests/memvars/inlining.c
cross-project-tests :: debuginfo-tests/dexter-tests/namespace.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/optnone-fastmath.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/optnone-loops.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
cross-project-tests :: debuginfo-tests/dexter-tests/stack-var.c
cross-project-tests :: debuginfo-tests/dexter-tests/vla.c
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect-results.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/clang-opt-bisect/clang-opt-bisect.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
cross-project-tests :: debuginfo-tests/dexter/feature_tests/subtools/view.cpp
```
</details>
Build command:
```
cmake -S ../llvm -B . -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_ENABLE_PROJECTS="bolt;llvm;clang;lld;lldb;clang-tools-extra;cross-project-tests;libclc;polly;pstl" -DLLVM_ENABLE_RUNTIMES="openmp;libcxx;libcxxabi;libunwind;compiler-rt" -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DLIBCXX_USE_COMPILER_RT=YES -DLLVM_USE_LINKER=lld -DLIBCXXABI_USE_LLVM_UNWINDER=YES -DLLVM_INSTALL_UTILS=ON -DCMAKE_INSTALL_PREFIX=$HOME/llvm15_temp
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWllz4rgW_jXkRWWKJWwPPLClmzuEpBJyp-fJJdsyqFu2XJJMkvn19xx5gZBlehoCTM2lXMbWdr5zpLPJ8mTw3K80RwEzlAtdaU4qtXGlNoAinUYRVc9QdMcSxTSLDTV8zQhTSipoUGlcbdrk3dq1_MpeG3tcdoSrwXRWaQ6Ir6TWTqLkd-YbxzBtNIFyrAqYly55HMqsGFAF7MkwBQ8hoyZVzC0qdOoZKQU--oLGS0cmxvG4hjHfKKr6SUIqjW77stZqEhmSTqdeq1cavf2ZI4vJ_QLG7pyKLyBNULaTMdl_ku59xRODsO2r4xRraIAs3j3M8YkaInjMyCUUVZpDQohRKfuoZatsWWk0gI9UI-8ej-GePJuVjJvVeg3q8vqVjBj8CU4j-BvLx1hIGqBQhFhHpZDrrWqt2qxq5aNsXsvfCvpd0WcP1eQZ6e5Kltif49j-S6aIEIFXFHopFwGU2U5FoR8KutTIgHNTI84SO-DIebUIPq4nx2L7AJpEKp3Rr-K1sisn_4oLNlox_8c_iP2XqjF54oaMZMBwvTdyJbD3kQSLGgfkJjVJatD8aAOrRqHZeaVg9p6bY7CRMhUBiSWoD0ggW3vQP6FmZTWkORrdPMzGZH6zIFfT-ZjcDhZf0XTDegok07Yre-IayLaGYPFTYdDswQtoYrbyOpUGTmLHucXn1hiv0iC-vu9jWvY2S_-nTn7i90avxYprAhcloBCEx2Q8eVqA0fu416_RevW7FYxqRhRLpDKEm-rBaP2bV8LJqNu7ftaGRaX9Au-ePm3Xr5nSXMZlg2y9kTqY7DySJCTVHNzmrfX7BB1_tY3WLaLoEkZkACu1XiONGoYCI1Kvw2CXNbjVIODooQ37MsJi8AE1NFpb1Kla6pJ0Zuw-iDYKC3iCgKMg_drllGa5DD02ZTuGu4hDdobbbpEFJVslW6HHplUem_xVs-NL7CDR8c4aWSjqM4_akKMbSXCRivmQERGfCkEE1WbbQROCIcqpwlIUtw2gGzV8BPsNrj-SQSpYmaihhVQMxBS7PoQh0GJMMlXqlv78JFzAvZisa8Czw1G918xZsmB3WCHY083Z8GVsYFxsnvFeXUDtdkUP66zynzPH7UbO8Ya5d2cQm1SX8pwmcQHVKPghOPVd1pqtnDWAXPKkmQirrkpjq78Y_9qCJTO2wI0p8tAFhQWPoau2DENcO59nwrS1KS5AdEszgzLY5b9V8L9htxTDiqUKInHu24n9WrwV8tha3eBak9Mv4dUG4VWJdpfhy2Ituy6PuXHdDb-hhMw4z32ggWWqmhfozCmP2dOYgWgVGwQBpCc6N9OF1V08J2xSJENQN5cxwzLc65AesoNBLSY54BG03bOgnsi3IDY5JdsaArfBTAAqh1lSB7uzKDHP1d0-BXJkE7v-2_PcnTx1Z1fQbh2-2nEs6j7cipxhdgo5qWKCrSn43xDasoBkgH9mT5L8yl5i-UqXS8WW1DCHxwFXOAB4kA3j-43uG6kONVbgLTNoBxmMhaAWLHCXQnpU6EOBjFi0pipjXQknFPLxMIA3A_MYlBJSh8OMi95HJxALHkoCoD0x2CknhBAyAjd26HGFlMnBpqsYVPMoEYA5jf3MCx96fKNS1Kw4cCIGqVdwcAprhrqmLYmDs6ENJAoOrL_DrLm1oHsN9IZdLx0r5LZMhbk5zwpddGJHIQit3SDz6C4tXPpV_uTSEIZyFQv3nJbDoFlBuOLLNDYnRcOe8Esc7pUUhSeFwwNIgTmkwGeBJkqF4WCXzgKMDEMNKcs5QMGEAdZulFCIymV8RCwheF69yhM5DCIoTBFAgdAJDS4V54TlJCr-NqrzQZJ5-pPBEDwCUdhk8CyWzTt4zmDCtpGdF5qjLiFwkPDgwthLRSNAAKnacUkj0-4PyA5xAJsh8qPZ3DcgYHB7OurAfqo0X59wDnREhXAxDToBBqkCtm9G_zfpPlLjgx4-J0eWeUZ3TUV6LMKhkNS4isZLllHfKSviwTOBE0t3_62iQ4GxWnEmWP5kSroRVhwJ0JZ3grdje8uX1F9EFLjX636HGD2zHueBKtfvI1rQv8RyTCvzPhjcJ3Ejrk-3dLfRyDVTgiYJj5eZXh0r6XwfkqYRy6R0_Nj9JSoIgo6OII0Vo_4KPzEdnyJ4G7BqUbaZF8sTAAAjlm0kHpry3_sm5WTnGD9BGX7129gn0M-zrmKvMlE8NvaTx-fTFNRjwqWw3FZMff6Mv6Ca7bF9Kr01Z49bnzV__kPmEL_kFt-FN6fLXg7gR_QHI849qVYr2Xdc4gxJlThfyJzH3ylxxqPrwW8Td_gwnY3dxR-3k0pzfMeyI5LOeDb777W7GNx9mSzu3cVN1gxafOu2i9rJfDCcTdzbu5v_TEaLe6isNBqeFKbSHCJB-MvOf-FrkN29otCxYnBATopi2Rufk6ED93zhw0MihXjGf20Enil-ieDuYb6YXk9yBDJhcZTkvZ-eygfq8ew5jR8xfwOiMkq4YMpRJhs0k8jIHd1c305nkzsYMDtSX1Z9-_aqstIYwoWQpkOsf7iflG3cuwU0-2NyXyDGytl0_pvtDvIouw2G06zStpr_Pp2PbZutvtP5_WIwm7kPi-kMeb2Zl7iKqtu7ydX0m5XD5deb60k-9fUWLMBod6VdsH693W73es1GvXMR9JtBr9mjF4Ybwfr5OUmcCTwcCQv8IlWivzImsScaG1dwLblZpR6epcgJVV4eGYBXrnXKcLm3uu1u_WLVZ0EzbITdIOi2Wl6Ttb2Asl6ddcDOMy9o1i6sAuq-PZjRiNkjsUPgYY_W-IL38RhmvdboNuqXtXqnGtQvg04r9HuXtNdsUb9yWWMRKE0VcVSlWl6ovoUEHGioFByW1qaSas2XMWOWHIxPU7OS0IPTyPHB5Py4sNT7Fv3_AEjRNvU">