llvm-project/clang
Michael Han 9407e50b04 Improve diagnostic on C++11 attribute specifiers that appear at wrong syntactic locations around class specifiers.
This change list implemented logic that explicitly detects several combinations of locations where C++11 attribute
specifiers might be incorrectly placed within a class specifier. Previously we emit generic diagnostics like 
"expected identifier" for such cases; now we emit specific diagnostic against the misplaced attributes, this also 
fixed a bug in old code where attributes appear at legitimate locations were incorrectly rejected.

Thanks to Richard Smith for reviewing!

llvm-svn: 168626
2012-11-26 22:54:45 +00:00
..
INPUTS Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164766 2012-09-27 10:16:10 +00:00
bindings [clang.py] Add Cursor.get_arguments() 2012-11-01 05:46:30 +00:00
docs Updates to user's manual and release notes for -fsanitize= options. 2012-11-06 19:23:14 +00:00
examples analyzer-plugin/MainCallChecker.cpp: Fixup corresponding to r167275. 2012-11-02 02:04:01 +00:00
include Improve diagnostic on C++11 attribute specifiers that appear at wrong syntactic locations around class specifiers. 2012-11-26 22:54:45 +00:00
lib Improve diagnostic on C++11 attribute specifiers that appear at wrong syntactic locations around class specifiers. 2012-11-26 22:54:45 +00:00
runtime UBSan: enable proper linking with UBsan runtime on Darwin. Turn on building ubsan on OS X in 'make' build system. Patch by Jean-Daniel Dupas. 2012-11-16 12:53:14 +00:00
test Improve diagnostic on C++11 attribute specifiers that appear at wrong syntactic locations around class specifiers. 2012-11-26 22:54:45 +00:00
tools Make helpers static/anonymous. 2012-11-22 15:02:44 +00:00
unittests Fix partial-match-bind-behavior with forEachDescendant() matchers. 2012-11-16 18:39:22 +00:00
utils [analyzer] SATestBuild.py: allow make builds to disable parallelization 2012-11-26 19:59:57 +00:00
www Mention the lldb formatters in the clang wiki under debugging. 2012-11-16 00:25:28 +00:00
.gitignore Add extra vim swap file pattern 2012-10-09 23:48:58 +00:00
CMakeLists.txt CMake: Fix public header search for generating Xcode/MSVC projects. 2012-10-23 21:54:03 +00:00
INSTALL.txt
LICENSE.TXT
Makefile The top-level clang Makefile is #included into other Makefiles. (sigh) So we 2012-10-03 08:39:19 +00:00
ModuleInfo.txt
NOTES.txt Fix typo (test commit) 2012-10-18 15:24:46 +00:00
README.txt commit access verified, revert change 2012-03-06 22:55:51 +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/