[lldb][Test] TestRerunAndExpr.py: explicitly delete a.out before rebuilding it
authorMichael Buch <michaelbuch12@gmail.com>
Thu, 8 Dec 2022 17:08:00 +0000 (17:08 +0000)
committerMichael Buch <michaelbuch12@gmail.com>
Thu, 8 Dec 2022 17:17:05 +0000 (17:17 +0000)
commitad3870d6552305d2d6bd6aa2faca6f0644052d9a
tree21365d8df1013acd1ffcc68599747fa0c323c052
parent739611870d3b06605afe25cc07833f6a62de9545
[lldb][Test] TestRerunAndExpr.py: explicitly delete a.out before rebuilding it

**Summary**

Older versions of `make` would occasionally fail to realize
that a pre-requisite for the `a.out` target has changed. This
resulted in roughly 1 out of 10 test runs to fail. Instead of
relying on `make` to resolve this dependency simply remove the
file before rebuilding; this will give make no option but to
remake `a.out`.

**Testing**

* Confirmed that the test passes on the host for 100 runs where
  without the patch it would fail after ~10

**Details**

Adding `-d` to lldbtest's `make` invocation and running the
test without this patch sometimes yielded:
```
Removing child 0x600000308ff0 PID 19915 from chain.
    Successfully remade target file `rebuild.o'.
   Finished prerequisites of target file `a.out'.
   Prerequisite `rebuild.o' is newer than target `a.out'.
  No need to remake target `a.out'.
```

Differential Revision: https://reviews.llvm.org/D139643
lldb/test/API/functionalities/rerun_and_expr/TestRerunAndExpr.py