<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62786>62786</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
`ld64.lld --reproduce` produces confusing tar file if `-Lnonexistent-dir` is passed
</td>
</tr>
<tr>
<th>Labels</th>
<td>
lld:MachO
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
nico
</td>
</tr>
</table>
<pre>
```
cd /tmp
mkdir foo
cd foo
cat > main.c
echo 'int main() {}' > main.c
mkdir foo
~/src/llvm-project/out/gn/bin/clang main.c -fuse-ld=lld -isysroot $(xcrun -show-sdk-path) -Wl,--reproduce=repro.tar -Lfoo -Wl,-fatal_warnings
open repro.tar
cd repro
~/src/llvm-project/out/gn/bin/ld64.lld @response.txt
ld64.lld: error: directory not found for option -Ltmp/foo/foo
```
Looks like we don't include empty directories in the tar for unused -L flags.
(Looks like `ld.lld` doesn't warn about -L flags pointing to nonexistent dirs, so it doesn't have this problem)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMU8GOozgQ_ZriUgIRQyA5cOiZLKes9rjHlbGL4G3jQraZ7lz221eGTCaauYyErKJsv6p671mGYG6OqIPjFzheMrnGiX3njOJsYH3voCkfX3mB8k1pBNHHedl_53dtPI7Mz90fsYwI1R84S-MKtedITYwgWuPilgdxAnFGaL9AewHR_nLhJ3z8D0QfvALRW_ttzhfP_5KKIHpe03pzIPoh4fbKSnd7YGE-roFyq6G6WKsxN-EePHNEEDWI06fyq8M8TPyRB_2eLzJOqa_8bwvia557WjzrVRFUly0uovSYX0fm72dGGaX950N6Z9wt7N3yQg6f558MbZn97_fHsbqpi9Q71KWnsLALVMTPuON834XqDcl79inQxpOK7O_oOOLIq0vqeOQlGnaYX5OKok_k7usG9ZPe-3plfg9ozTvhB6FmB6KNaJyyqyakeYn3ZzlDAY3DOBEmllLF1a2BNOZXHK28heIVGsTpBR2a0uptkqZEzRT2SolXlAOv8QmCCxsXjbthZHTs6NOESC6mPgKIrxgYTXzBmOQ3wjiZgIvnwdIM4pzprtLn6iwz6g7Nqa6OVdWKbOrkmVRTqaaSY9ucj-JUD2M91FTpWhxkVWemE6WoyuOhPZyPzUEUum7Ow-FQiorKg2hOUJc0S2OLpGzB_paZEFbqGtGemszKgWzYHp0Qu3B_SjX9BUKkV-i7zQ_DegtQl9aEGH7gRBMtdRtTD0-8OrQp8REGVOzGNWwcJSWMJTRj4ji_vjCWa-PTtcSMDIF0tnrbTTEuAao3EH1yoonTOhSK54dXf7XsNl4A0W8T_h8AAP__jrBfbg">