<div dir="ltr">We mock out STL containers for multiple reasons. One of them is to make the tests hermetic (as in "independent from the environment"). The developer has to make the mocks appropriately model the implementation of the standard library. If another implementation is sufficiently different, we need to add mocks for that implementation as well. Making the tests use actual library headers is problematic, since it will significantly increase testing time and complicate integration with different tests environments. So I'm strongly against this. We could make a mode where the actual headers are used instead of mock implementations, but we're not going to remove mocks completely.<div><br></div><div>Please file bugs for the specific issues you find. If you can isolate specific differences between library implementations that result in incorrect work of the checks (and maybe create the appropriate mocks for the library you use), it would help check developers to fix their checks.<br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 14, 2015 at 10:08 PM, Eugene Zelenko via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi!<br>
<br>
While working on LLDB code cleanup, I discovered that some of<br>
Clang-tidy STL containers checks don't work properly with LLVM STL<br>
implementation. More interesting discovery was that actual STL<br>
containers were not used in tests, but were replaced with code<br>
snippets.<br>
<br>
I think proper solution will be to use real STL headers and pass<br>
proper compiler flags from CMAKE_CXX_FLAGS when compiled with Clang<br>
and create -stdlib=libstdc++ --gcc-toolchain=<path> when compiled with<br>
GCC. Similar solution could be implemented for other compilers/STL<br>
implementations.<br>
<br>
Eugene.<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div></div></div>