diff --git a/unittests/Support/CommandLineTest.cpp b/unittests/Support/CommandLineTest.cpp
index fcbfd33..263d0e3 100644
--- a/unittests/Support/CommandLineTest.cpp
+++ b/unittests/Support/CommandLineTest.cpp
@@ -782,6 +782,40 @@
   llvm::sys::fs::remove(TestDir);
 }
 
+TEST(CommandLineTest, RecursiveResponseFiles) {
+  SmallString<128> TestDir;
+  std::error_code EC = sys::fs::createUniqueDirectory("unittest", TestDir);
+  EXPECT_TRUE(!EC);
+
+  SmallString<128> ResponseFilePath;
+  sys::path::append(ResponseFilePath, TestDir, "recursive.rsp");
+  std::string ResponseFileRef = std::string("@") + ResponseFilePath.c_str();
+
+  std::ofstream ResponseFile(ResponseFilePath.str());
+  EXPECT_TRUE(ResponseFile.is_open());
+  ResponseFile << ResponseFileRef << "\n";
+  ResponseFile << ResponseFileRef << "\n";
+  ResponseFile.close();
+
+  // Ensure the recursive expansion terminates.
+  SmallVector<const char *, 4> Argv = {"test/test", ResponseFileRef.c_str()};
+  BumpPtrAllocator A;
+  StringSaver Saver(A);
+#ifdef _WIN32
+  cl::TokenizerCallback Tokenizer = cl::TokenizeWindowsCommandLine;
+#else
+  cl::TokenizerCallback Tokenizer = cl::TokenizeGNUCommandLine;
+#endif
+  bool Res = cl::ExpandResponseFiles(Saver, Tokenizer, Argv, false, false);
+  EXPECT_FALSE(Res);
+
+  // Ensure some expansion took place.
+  EXPECT_GT(Argv.size(), 2U);
+  EXPECT_STREQ(Argv[0], "test/test");
+  for (size_t i = 1; i < Argv.size(); ++i)
+    EXPECT_STREQ(Argv[i], ResponseFileRef.c_str());
+}
+
 TEST(CommandLineTest, SetDefautValue) {
   cl::ResetCommandLineParser();
 
