Teach libclang to walk the base and member initializers of a
constructor, in source order. Also introduces a new reference kind for
class members, which is used here (for member initializers) and will
also be used for designated initializers and offsetof.

llvm-svn: 113545
diff --git a/clang/include/clang-c/Index.h b/clang/include/clang-c/Index.h
index 4631c65..fb74207 100644
--- a/clang/include/clang-c/Index.h
+++ b/clang/include/clang-c/Index.h
@@ -1027,15 +1027,20 @@
   CXCursor_TypeRef                       = 43,
   CXCursor_CXXBaseSpecifier              = 44,
   /** 
-   * \brief A reference to a class template, function template, or template
-   * template parameter. 
+   * \brief A reference to a class template, function template, template
+   * template parameter, or class template partial specialization.
    */
   CXCursor_TemplateRef                   = 45,
   /**
    * \brief A reference to a namespace or namespace alias.
    */
   CXCursor_NamespaceRef                  = 46,
-  CXCursor_LastRef                       = CXCursor_NamespaceRef,
+  /**
+   * A reference to a member of a struct, union, or class that occurs in some
+   * non-expression context, e.g., a designated initializer.
+   */
+  CXCursor_MemberRef                     = 47,
+  CXCursor_LastRef                       = CXCursor_MemberRef,
 
   /* Error conditions */
   CXCursor_FirstInvalid                  = 70,