<div dir="ltr"><div>This feels like a bug to me. Yesterday I was asking what the rules were because it felt like things change and break randomly. Now I have a good example. (link to my email yesterday <a href="http://lists.llvm.org/pipermail/lldb-dev/2020-February/015989.html">http://lists.llvm.org/pipermail/lldb-dev/2020-February/015989.html</a>)</div><div><br></div><div>Take this example source file</div><div><br></div>int main() {<br>    int dummy = 25;<br>    short wtf[dummy];<br>    memset(wtf, 0, dummy*sizeof(*wtf));<br>    return 0;<br><div>}</div><br>Now emit the llvm-ir so we can edit it <br><br>clang -g test.c -S -emit-llvm<br><br>Before line 21 write this line<br><br>%z8 = bitcast i16* %8 to i16*<br><br>Change the `metadata i16* %8` to `metadata i16* %z8`. Compile it then debug line 4 `clang -g wtf.ll` `lldb-9 ./a.out` `break set -f test.c -l 4` `r` `frame variable`<br><br>You'll see the array doesn't show up. If you change %z8 back to %8 it will reappear. Is this a bug or can I not use bitcast when I'm trying to do things with llvm.dbg.declare/addr/value?<br><br></div>