Sema::SectionInfo: Prune "default" for now. Defaulted function is unavailable on msc17.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205840 91177308-0d34-0410-b5e6-96231b3b80d8
Sema::SectionInfo() should have an empty body. Sorry for the breakage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205841 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Add proto files and JavaScript to git-clang-format.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205842 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Recognize lists ending in trailing commas correctly.

Previously, this did not look through trailing comments leading to a few
formatting oddities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205843 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Keep more trailing annotations on the same line.

More precisely keep all short annotations (<10 characters) on the same
line if possible. Previously, clang-format would only prefer to do so
for "const", "override" and "final". However, it seems to be generally
preferable, especially because some codebases have to wrap those in
macros for backwards compatibility.

Before:
  void someLongFunction(int someLongParameter)
      OVERRIDE {}

After:
  void someLongFunction(
      int someLongParameter) OVERRIDE {}

This fixes llvm.org/PR19363.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205845 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Allow breaking between trailing annotations in more cases.

Before:
  void aaaaaaaaaaaaaa(aaaaaaaa aaa) override AAAAAAAAAAAAAAAAAAAAAAAA(
      aaaaaaaaaaaaaaa);

After:
  void aaaaaaaaaaaaaa(aaaaaaaa aaa) override
      AAAAAAAAAAAAAAAAAAAAAAAA(aaaaaaaaaaaaaaa);

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205846 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Improve format of calls with several lambdas.

Before:
  SomeFunction([]() {
                 int i = 42;
                 return i;
               },
               []() {
    int j = 43;
    return j;
  });

After:
  SomeFunction([]() {
                 int i = 42;
                 return i;
               },
               []() {
                 int j = 43;
                 return j;
               });

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205848 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Fix bug where clang-format would break the code.

Before, it would turn:
  SomeFunction([]() { // Cool function..
    return 43;
  });

Into this:
  SomeFunction([]() { // Cool function.. return 43; });

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205849 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Treat a trailing comment like a trailing comma in braced lists.

Before:
  static StructInitInfo module = {MODULE_BUILTIN, /* type */
                                  "streams" /* name */
  };

After:
  static StructInitInfo module = {
      MODULE_BUILTIN, /* type */
      "streams"       /* name */
  };

This fixes llvm.org/PR19378.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205851 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Update flag documentation, and generation script.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205853 91177308-0d34-0410-b5e6-96231b3b80d8
Thread Safety Analysis: some minor cleanups to the latest thread safety changes. No functional changes intended.

* Adds an iterator_range interface to CallExpr to get the arguments
* Modifies SExpr such that it must be allocated in the Arena, and cannot be deleted
* Minor const-correctness and nullptr updates
* Adds some operator!= implementations to complement operator==
* Removes unused functionality


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205915 91177308-0d34-0410-b5e6-96231b3b80d8
Cannot have the base class destructor be private (or explicitly deleted); fixing the build bots.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205916 91177308-0d34-0410-b5e6-96231b3b80d8
[Preprocessor/CodeComplete] Don't add include guard macros to code-completion results.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205917 91177308-0d34-0410-b5e6-96231b3b80d8
Add a -triple argument so that this new test passes on Darwin.

The section names used here are not valid for Mach-O.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205920 91177308-0d34-0410-b5e6-96231b3b80d8
Make c-index-test -test-print-type include pointeekind for pointer types

The idea is to give visibility to more type kinds, especially for getting
a better grasp of what appears as unexposed type kind with libclang.

Differential Revision: http://reviews.llvm.org/D3325


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205921 91177308-0d34-0410-b5e6-96231b3b80d8
Handle difference in signedness of 'char' in test/Index/print-type.c{,pp}


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205922 91177308-0d34-0410-b5e6-96231b3b80d8
clang-cl: Disable TBAA by default for MSVC compatibility

MSVC doesn't have an option to enable TBAA, so make -fstrict-aliasing
and -fno-strict-aliasing available in clang-cl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205924 91177308-0d34-0410-b5e6-96231b3b80d8
Thread Safety Analysis: now with less includes. No functional changes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205929 91177308-0d34-0410-b5e6-96231b3b80d8
Switching back from a static namespace-scoped function to a static class-scope function. No functional change, but resolves a warning.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205931 91177308-0d34-0410-b5e6-96231b3b80d8
[MS-ABI] Update to alias-avoidance padding
This patch changes how we determine if padding is needed between two 
bases in msvc compatibility mode.  Test cases included.

In addition, a very minor change to the printing of structures to ease 
lit testing.


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