Mirror of official clang git repository located at http://llvm.org/git/clang. Updated every five minutes.
Перейти к файлу
Chandler Carruth b9c398b25b Sink the logic for suppressing some macro expansion notes from the
TextDiagnosticPrinter into the CaretDiagnostic class. Several
interesting results from this:

- This removes a significant per-diagnostic bit of state from the
  CaretDiagnostic class, which should eventually allow us to re-use the
  object.
- It removes a redundant recursive walk of the macro expansion stack
  just to compute the depth. We don't need the depth until we're
  unwinding anyways, so we can just mark when we reach it.
- It also paves the way for several simplifications we can do to how we
  implement the suppression.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140474 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-25 22:27:52 +00:00
INPUTS Enhance the CFG construction to detect no-return destructors for 2011-09-13 06:09:01 +00:00
bindings/python Update python testcase for GNU old-style field designator warning, 2011-08-30 00:16:30 +00:00
docs Driver: Add a --working-directory option which can be used to cause the compiler 2011-09-23 20:33:41 +00:00
examples Match LLVM change: TargetRegistry and TargetSelect have been moved to Support. 2011-08-24 18:09:14 +00:00
include Sink the logic for suppressing some macro expansion notes from the 2011-09-25 22:27:52 +00:00
lib Sink the logic for suppressing some macro expansion notes from the 2011-09-25 22:27:52 +00:00
runtime Build and use libcompiler_rt whenever possible. 2011-06-22 17:41:40 +00:00
test Correctly parse braced member initializers (even in delayed parsing) and correctly pass 2011-09-24 17:48:25 +00:00
tools Removing a bunch of dead returns/breaks after llvm_unreachables. 2011-09-23 20:26:49 +00:00
unittests unittests/Basic/FileManagerTest.cpp: Suppress warnings on gcc. 2011-09-23 01:53:05 +00:00
utils [analyzer] CmpRuns can now optionally delete empty reports. 2011-09-12 22:40:36 +00:00
www Update C++0x status page to reflect support for raw string literals. 2011-08-11 04:09:26 +00:00
.gitignore Add .gitignore file. 2011-07-18 23:05:36 +00:00
CMakeLists.txt CMake: Define ${LLVM_TABLEGEN_EXE} with explicit ${CMAKE_EXECUTABLE_SUFFIX} on standalone build. Or build might fail with NMake. 2011-09-23 00:52:55 +00:00
INSTALL.txt Add minimal INSTALL.txt 2009-09-13 02:21:31 +00:00
LICENSE.TXT My calendar says it's 2011. 2011-06-12 15:26:54 +00:00
Makefile Basic: Add support for a build variable to set the repository path that goes 2011-03-31 00:32:50 +00:00
ModuleInfo.txt Move the ModuleInfo.txt file. 2007-07-11 17:03:27 +00:00
NOTES.txt Make a note about a missing optimization. 2011-07-28 07:41:22 +00:00
README.txt Fix typo (test commit) 2010-06-17 12:39:05 +00:00
TODO.txt Test commit; added blank line to TODO.txt 2011-01-04 19:19:20 +00:00

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.cs.uiuc.edu/mailman/listinfo/cfe-dev

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