Fix the Driver/cl-fallback.c test

On machines that have cl.exe on PATH, the note will print the full path.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201613 91177308-0d34-0410-b5e6-96231b3b80d8
Fix false positives in -Wmsvc-include by continuing header search

This makes Clang and LLVM -Wmsvc-include clean.

I believe the correct behavior here is to avoid updating the cache when
we find the header via MSVC's search rules.

Differential Revision: http://llvm-reviews.chandlerc.com/D2733

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201615 91177308-0d34-0410-b5e6-96231b3b80d8
[docs] Nuke some references to llvm-gcc

From a cursory look it seems like all the described commandline options
and such apply to clang just fine, but I'd appreciate a second opinion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201616 91177308-0d34-0410-b5e6-96231b3b80d8
Add missing test file for r201615

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201617 91177308-0d34-0410-b5e6-96231b3b80d8
Initial implementation of virtual file system

This adds the minimum virtual file system support to start migrating
FileManager onto the VFS.

Originally discussed here:
http://lists.cs.uiuc.edu/pipermail/cfe-dev/2014-February/035188.html

Differential Revision: http://llvm-reviews.chandlerc.com/D2745

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201618 91177308-0d34-0410-b5e6-96231b3b80d8
[docs] Clean up some more llvm-gcc stuff

Some references to llvm-gcc were so crusty that I wasn't sure how to
proceed and so I've left them intact.

I also slipped in a quick peephole fix to use a :doc: link instead of
raw HTML link.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201619 91177308-0d34-0410-b5e6-96231b3b80d8
PR13110: Add a -Wignored-qualifiers warning when ignoring a const, volatile, or
_Atomic qualifier applied to a reference type.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201620 91177308-0d34-0410-b5e6-96231b3b80d8
Remove a C++11ism.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201621 91177308-0d34-0410-b5e6-96231b3b80d8
Avoid an infinite cycle with private linkage and -f{data|function}-sections.

When outputting an object we check its section to find its name, but when
looking for the section with -ffunction-section we look for the symbol name.

Break the loop by requesting a name with the private prefix when constructing
the section name. This matches the behavior before r201608.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201622 91177308-0d34-0410-b5e6-96231b3b80d8
Use PrivateLinkage now that it is safe.

Now that llvm's codegen knows to use an 'l' prefix when needed, we can just
use PrivateLinkage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201624 91177308-0d34-0410-b5e6-96231b3b80d8
Now that llvm always does the right thing with private, use it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201625 91177308-0d34-0410-b5e6-96231b3b80d8
clang-cl /fallback: turn the note into a warning

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201626 91177308-0d34-0410-b5e6-96231b3b80d8
Remove dead code.

Clang never produces a linker private object, so this code is dead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201627 91177308-0d34-0410-b5e6-96231b3b80d8
CIndex: initialise TU

TU is not guaranteed to be initialised in all cases.  In particular if CIdx or
ast_filename is NULL (or if &TU is NULL), then clang_createTranslationUnit2 will
not initialise the out parameter out_TU.  This is followed by an assertion check
which may perform a branch based on unitialised memory.

Caught by scan-build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201628 91177308-0d34-0410-b5e6-96231b3b80d8
MCAsmParser: change representation of MCAsmMacroParameter

Rather than using std::pair, create a structure to represent the type.  This is
a preliminary refactoring to enable required parameter handling.  Additional
state is needed to indicate required parameters.  This has a minor side effect
of improving readability by providing more accurate names compared to first and
second.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201629 91177308-0d34-0410-b5e6-96231b3b80d8
MCAsmParser: support required parameters

This enhances the macro parser to parse and handle parameter qualifications,
which is needed to support required formal parameters in macro definitions.  A
required parameter may not be defaulted (though providing a default value is
accepted with a warning).  This improves GAS compatibility.

Partially addresses PR9248.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201630 91177308-0d34-0410-b5e6-96231b3b80d8
Implement DR577

DR18 previously forebode typedefs to be used as parameter types if they
were of type 'void'.  DR577 allows 'void' to be used as a function
parameter type regardless from where it came.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201631 91177308-0d34-0410-b5e6-96231b3b80d8
Regenerate DR status page.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201632 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a typo in a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201633 91177308-0d34-0410-b5e6-96231b3b80d8
Remove gunk from cxx_dr_status.html

Accidentally piped the stdout from make_cxx_dr_status into
cxx_dr_status.html


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@201634 91177308-0d34-0410-b5e6-96231b3b80d8