<div dir="ltr">Hi David,<div><br></div><div>This looks like a regression from when I added the JSON AST dump parsing code.</div><div>I never tried using it on a file with both definition and declaration for the same function. I've posted <a href="https://reviews.llvm.org/D73708">https://reviews.llvm.org/D73708</a> which should fix this issue.</div><div><br></div><div>Alex</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 29 Jan 2020 at 17:56, David Greene <<a href="mailto:dag@cray.com">dag@cray.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">David Greene <<a href="mailto:dag@cray.com" target="_blank">dag@cray.com</a>> writes:<br>
<br>
> void foo();<br>
><br>
> int main() {<br>
>   foo();<br>
>   return 0;<br>
> }<br>
><br>
> void foo() {<br>
>   ...<br>
> }<br>
><br>
> The checks for foo were put in front of the definition of foo.  Now I am<br>
> seeing the checks put in front of the declaration of foo, which messes<br>
> up the CHECK-LABEL ordering.<br>
<br>
Actually, I see the checks place *both* before the declaration *and*<br>
before the definition.<br>
<br>
                      -David<br>
</blockquote></div>