diff --git a/include/clang/AST/PrettyPrinter.h b/include/clang/AST/PrettyPrinter.h
index 31be46f..e0b1d32 100644
--- a/include/clang/AST/PrettyPrinter.h
+++ b/include/clang/AST/PrettyPrinter.h
@@ -39,7 +39,7 @@
       SuppressUnwrittenScope(false), SuppressInitializers(false),
       ConstantArraySizeAsWritten(false), AnonymousTagLocations(true),
       SuppressStrongLifetime(false), Bool(LO.Bool),
-      DontRecurseInDeclContext(false), DumpSourceManager(0) { }
+      TerseOutput(false), DumpSourceManager(0) { }
 
   /// \brief What language we're printing.
   LangOptions LangOpts;
@@ -134,13 +134,12 @@
   /// doesn't actually have 'bool' (because, e.g., it is defined as a macro).
   unsigned Bool : 1;
 
-  /// \brief Don't print contents of DeclContexts.  Used to provide a 'terse'
-  /// output.
+  /// \brief Provide a 'terse' output.
   ///
   /// For example, in this mode we don't print function bodies, class members,
   /// declarations inside namespaces etc.  Effectively, this should print
   /// only the requested declaration.
-  unsigned DontRecurseInDeclContext : 1;
+  unsigned TerseOutput : 1;
 
   /// \brief If we are "dumping" rather than "pretty-printing", this points to
   /// a SourceManager which will be used to dump SourceLocations. Dumping
diff --git a/lib/AST/DeclPrinter.cpp b/lib/AST/DeclPrinter.cpp
index 303031c..d96b6e5 100644
--- a/lib/AST/DeclPrinter.cpp
+++ b/lib/AST/DeclPrinter.cpp
@@ -220,7 +220,7 @@
 //----------------------------------------------------------------------------
 
 void DeclPrinter::VisitDeclContext(DeclContext *DC, bool Indent) {
-  if (Policy.DontRecurseInDeclContext)
+  if (Policy.TerseOutput)
     return;
 
   if (Indent)
diff --git a/unittests/AST/DeclPrinterTest.cpp b/unittests/AST/DeclPrinterTest.cpp
index c86ec2d..0292499 100644
--- a/unittests/AST/DeclPrinterTest.cpp
+++ b/unittests/AST/DeclPrinterTest.cpp
@@ -32,7 +32,7 @@
 
 void PrintDecl(raw_ostream &Out, const ASTContext *Context, const Decl *D) {
   PrintingPolicy Policy = Context->getPrintingPolicy();
-  Policy.DontRecurseInDeclContext = true;
+  Policy.TerseOutput = true;
   D->print(Out, Policy, /*Indentation*/ 0, /*PrintInstantiation*/ false);
 }
 
