[clang-tidy] Fix ParentVirtualCallCheck for old MSVS compilers
[lldb.git] / clang-tools-extra / pp-trace / PPCallbacksTracker.h
index 8c2e6bb..7b57d34 100644 (file)
@@ -1,11 +1,11 @@
-//===--- PPCallbacksTracker.h - Preprocessor tracking -*- C++ -*---------===//
+//===--- PPCallbacksTracker.h - Preprocessor tracking -----------*- C++ -*-===//
 //
 //                     The LLVM Compiler Infrastructure
 //
 // This file is distributed under the University of Illinois Open Source
 // License. See LICENSE.TXT for details.
 //
-//===--------------------------------------------------------------------===//
+//===----------------------------------------------------------------------===//
 ///
 /// \file
 /// \brief Classes and definitions for preprocessor tracking.
 /// record the preprocessor callback name and arguments in high-level string
 /// form for later inspection.
 ///
-//===--------------------------------------------------------------------===//
+//===----------------------------------------------------------------------===//
 
 #ifndef PPTRACE_PPCALLBACKSTRACKER_H
 #define PPTRACE_PPCALLBACKSTRACKER_H
 
 #include "clang/Lex/PPCallbacks.h"
 #include "clang/Lex/Preprocessor.h"
+#include "clang/Basic/SourceManager.h"
+#include "llvm/ADT/ArrayRef.h"
+#include "llvm/ADT/SmallSet.h"
+#include "llvm/ADT/StringRef.h"
+#include <string>
+#include <vector>
 
 /// \brief This class represents one callback function argument by name
 ///   and value.
@@ -31,7 +37,7 @@ class Argument {
 public:
   Argument(llvm::StringRef Name, llvm::StringRef Value)
       : Name(Name), Value(Value) {}
-  Argument() {}
+  Argument() = default;
 
   std::string Name;
   std::string Value;
@@ -42,7 +48,7 @@ public:
 class CallbackCall {
 public:
   CallbackCall(llvm::StringRef Name) : Name(Name) {}
-  CallbackCall() {}
+  CallbackCall() = default;
 
   std::string Name;
   std::vector<Argument> Arguments;
@@ -134,11 +140,13 @@ public:
   void MacroDefined(const clang::Token &MacroNameTok,
                     const clang::MacroDirective *MD) override;
   void MacroUndefined(const clang::Token &MacroNameTok,
-                      const clang::MacroDefinition &MD) override;
+                      const clang::MacroDefinition &MD,
+                      const clang::MacroDirective *Undef) override;
   void Defined(const clang::Token &MacroNameTok,
                const clang::MacroDefinition &MD,
                clang::SourceRange Range) override;
-  void SourceRangeSkipped(clang::SourceRange Range) override;
+  void SourceRangeSkipped(clang::SourceRange Range,
+                          clang::SourceLocation EndifLoc) override;
   void If(clang::SourceLocation Loc, clang::SourceRange ConditionRange,
           ConditionValueKind ConditionValue) override;
   void Elif(clang::SourceLocation Loc, clang::SourceRange ConditionRange,
@@ -179,7 +187,7 @@ public:
   void appendArgument(const char *Name, const clang::Token &Value);
 
   /// \brief Append an enum argument to the top trace item.
-  void appendArgument(const char *Name, int Value, const char *Strings[]);
+  void appendArgument(const char *Name, int Value, const char *const Strings[]);
 
   /// \brief Append a FileID argument to the top trace item.
   void appendArgument(const char *Name, clang::FileID Value);