title: Why can't clang enable all sanitizers?
body: <p><a href="http://clang.llvm.org/docs/index.html" rel="noreferrer">Clang</a> has various sanitizers that can be turned on to catch problems at runtime.<br>
  However, there are some sanitizers that I can't use together.  Why is that?  </p>
  
  <pre><code>clang++-3.9 -std=c++1z -g -fsanitize=memory -fsanitize=address -o main main.cpp                                                                                   1
  clang: error: invalid argument '-fsanitize=address' not allowed with '-fsanitize=memory'
  </code></pre>
  
  <p>It's not a big deal, but when I run my unit tests, it takes longer than it should, because I have create multiple binaries for the same tests, and run each of them separately.  </p>
  
  <pre><code>clang++-3.9 -std=c++1z -g -fsanitize=address -o test1 test.cpp
  clang++-3.9 -std=c++1z -g -fsanitize=memory -fsanitize=undefined  -o test2 test.cpp
  </code></pre>