aaron.ballman added inline comments.
================ Comment at: test/clang-tidy/bugprone-unused-return-value.cpp:163 + +void noWarning() { + auto AsyncRetval1 = std::async(increment, 42); ---------------- khuttun wrote: > aaron.ballman wrote: > > Sorry, I just realized that we're missing a test case for a common > > situation -- where the result is used as part of another call expression. > > Can you add a test to `noWarning()` to make sure this does not warn: > > ``` > > std::vector<int> v; > > extern void f(bool); > > > > f(v.empty()); // Should not warn > > ``` > See line 199 in this file. Ah, my eyes missed that, thank you! Hmm, I *think* this test should also be okay, but I want to be sure: ``` std::vector<int> v; bool b = ({v.empty()}); // Should not warn ({v.empty()}); // ??? ``` I kind of thing that, as an extension to the spirit of this check, any GNU expression statement whose result is unused should probably be diagnosed; what do you think? You should add tests for the above so we document the expected behavior here. https://reviews.llvm.org/D41655 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits