[llvm-dev] [SemaCXX] Should we fix test failing due to reverse iteration?
Grang, Mandeep Singh via llvm-dev
llvm-dev at lists.llvm.org
Fri Jun 2 00:16:45 PDT 2017
Thanks for the fix, Richard.
On 6/1/2017 9:41 PM, Richard Trieu wrote:
> This is my old code. I went ahead and fixed it in r304519. Let me
> know if there's any other trouble from it.
>
> (To the mailing lists this time.)
>
> On Thu, Jun 1, 2017 at 1:46 PM, Grang, Mandeep Singh via llvm-dev
> <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>
> I see that the following test fails if reverse iteration of
> SmallPtrSet is enabled:
>
> /clang/test/SemaCXX/warn-loop-analysis.cpp/
>
> This is because in SemaStmt.cpp we iterate SmallPtrSet and output
> warnings about the variables not used in the loop.
>
> Expected output: /warning: variables 'i', 'j', and 'k' used in
> loop condition not modified/
>
> Output with reverse iteration: /warning: variables 'k', 'j', and
> 'i' used in loop condition not/
>
> I would like the community's opinion on whether this is something
> worth fixing? In this case, should the output always be the same
> irrespective of the iteration order?
>
> If yes, then we have 2 alternatives:
>
> 1. Change SmallPtrSet to SmallVector for the container (VarDecls)
> being iterated - this may have a compile time impact (need to
> measure).
>
> 2. Sort the container (VarDecls) before iteration. We can sort
> based on decl source location and decl name. Not sure if these
> guaranteed to be unique?
>
> Thanks,
>
> Mandeep
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170602/acf928e5/attachment.html>
More information about the llvm-dev
mailing list