llvm-project/clang
Artem Dergachev 6c0b2ce1be [analyzer] MoveChecker: NFC: Remove the workaround for the "zombie symbols" bug.
The checker had extra code to clean up memory regions that were sticking around
in the checker without ever being cleaned up due to the bug that was fixed in
r347953. Because of that, if a region was moved from, then became dead,
and then reincarnated, there were false positives.

Why regions are even allowed to reincarnate is a separate story. Luckily, this
only happens for local regions that don't produce symbols when loaded from.

No functional change intended. The newly added test demonstrates that even
though no cleanup is necessary upon destructor calls, the early return
cannot be removed. It was not failing before the patch.

Differential Revision: https://reviews.llvm.org/D54372

llvm-svn: 348208
2018-12-03 22:44:16 +00:00
..
INPUTS
bindings Portable Python script across version 2018-12-03 12:12:48 +00:00
cmake [Driver] Support XRay on Fuchsia 2018-11-22 02:36:47 +00:00
docs Portable Python script across version 2018-12-03 12:12:48 +00:00
examples Test commit - delete trailing space. 2018-11-19 12:16:05 +00:00
include [analyzer] Rename MisusedMovedObjectChecker to MoveChecker 2018-12-03 22:32:32 +00:00
lib [analyzer] MoveChecker: NFC: Remove the workaround for the "zombie symbols" bug. 2018-12-03 22:44:16 +00:00
runtime [CMake] Make bootstrap and compiler-rt depend on cxx-headers. 2018-06-28 18:35:25 +00:00
test [analyzer] MoveChecker: NFC: Remove the workaround for the "zombie symbols" bug. 2018-12-03 22:44:16 +00:00
tools Portable Python script across Python version 2018-12-03 20:26:51 +00:00
unittests Expect mixed path separators in FileManagerTest when resolving paths on Win32 2018-11-30 19:52:50 +00:00
utils Portable Python script across Python version 2018-12-03 12:41:35 +00:00
www [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker 2018-11-24 12:24:27 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore Revert an inadvertent change from r348020. 2018-11-30 19:32:35 +00:00
CMakeLists.txt inhereit LLVM_ENABLE_LIBXML2 2018-11-29 14:57:14 +00:00
CODE_OWNERS.TXT Add myself as code owner for OpenBSD driver 2018-11-30 21:42:34 +00:00
INSTALL.txt
LICENSE.TXT Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
ModuleInfo.txt
NOTES.txt
README.txt

README.txt

//===----------------------------------------------------------------------===//
// C Language Family Front-end
//===----------------------------------------------------------------------===//

Welcome to Clang.  This is a compiler front-end for the C family of languages
(C, C++, Objective-C, and Objective-C++) which is built as part of the LLVM
compiler infrastructure project.

Unlike many other compiler frontends, Clang is useful for a number of things
beyond just compiling code: we intend for Clang to be host to a number of
different source-level tools.  One example of this is the Clang Static Analyzer.

If you're interested in more (including how to build Clang) it is best to read
the relevant web sites.  Here are some pointers:

Information on Clang:             http://clang.llvm.org/
Building and using Clang:         http://clang.llvm.org/get_started.html
Clang Static Analyzer:            http://clang-analyzer.llvm.org/
Information on the LLVM project:  http://llvm.org/

If you have questions or comments about Clang, a great place to discuss them is
on the Clang development mailing list:
  http://lists.llvm.org/mailman/listinfo/cfe-dev

If you find a bug in Clang, please file it in the LLVM bug tracker:
  http://llvm.org/bugs/