=== modified file 'test/rbkt/testdriver_mt.cpp'
--- test/rbkt/testdriver_mt.cpp	2012-05-03 12:31:51 +0000
+++ test/rbkt/testdriver_mt.cpp	2012-07-26 14:34:43 +0000
@@ -44,7 +44,7 @@
 #include "testdriver_comparator.h"
 #include "testdriver_common.h"
 
-#define BOOST_FILESYSTEM_VERSION 2
+#define BOOST_FILESYSTEM_VERSION 3
 
 // These are included last because they define the <stdint.h>'s INTMAX_C and UINTMAX_C
 #include <boost/filesystem/operations.hpp>
@@ -233,25 +233,25 @@
 ********************************************************************************/
 void createPath(const fs::path& filePath, std::ofstream& fileStream)
 {
-  fileStream.open(filePath.file_string().c_str());
+  fileStream.open(filePath.c_str());
   if (!fileStream.good())
   {
     fs::path dirPath = filePath;
     dirPath = dirPath.remove_leaf();
     
-    if (!fs::exists(dirPath.file_string()))
+    if (!fs::exists(dirPath))
     {
-      fs::create_directories(dirPath.file_string());
+      fs::create_directories(dirPath);
 
       // clear the bad flag on windows, which for some unknown reason doesn't reset when opening a file again
       fileStream.clear(); 
-      fileStream.open(filePath.file_string().c_str());
+      fileStream.open(filePath.c_str());
     }
 
     if (!fileStream.good())
     {
       std::cerr << "Could not open file: " 
-                << filePath.file_string() << std::endl;
+                << filePath.string() << std::endl;
       abort();
     }
   }
@@ -380,7 +380,7 @@
     relativeQueryFile = queries->theQueryFilenames[queryNo];
     queryPath = fs::path(queries->theQueriesDir) / (relativeQueryFile);
 
-    std::string testName = fs::change_extension(queryPath, "").file_string();
+    std::string testName = fs::change_extension(queryPath, "").string();
     ulong pos = testName.find("Queries");
     testName = testName.substr(pos + 8);
 
@@ -393,7 +393,7 @@
     // exprected errors, or the pathnames of reference-result files.
     specPath = fs::change_extension(queryPath, ".spec");
     if (fs::exists(specPath))
-      querySpec.parseFile(specPath.file_string(), rbkt_src_dir, rbkt_bin_dir); 
+      querySpec.parseFile(specPath.string(), rbkt_src_dir, rbkt_bin_dir); 
 
     // Get the pathnames of the ref-result files found in the .spec file (if any).
     // If no ref-results file was specified in the .spec file, create a default
@@ -494,14 +494,14 @@
     setModulePaths(module_path, sctx);
 
     // Set the error file to be used by the error handler for the current query
-    errHandler.setErrorFile(errorFilePath.file_string());
+    errHandler.setErrorFile(errorFilePath.string());
 
     //
     // Compile the query, if it has not been compiled already. 
     //
     if (queries->theQueryObjects[queryNo] == 0)
     {
-      slurp_file(queryPath.file_string().c_str(),
+      slurp_file(queryPath.c_str(),
                  queryString,
                  rbkt_src_dir,
                  rbkt_bin_dir);
@@ -509,7 +509,7 @@
       try
       {
         query = zorba->createQuery(&errHandler);
-        query->setFileName(queryPath.file_string());
+        query->setFileName(queryPath.string());
         query->compile(queryString.c_str(), sctx, getCompilerHints());
       }
       catch(...)
@@ -632,8 +632,8 @@
       ulong i;
       for (i = 0; i < refFilePaths.size(); i++) 
       {
-        std::string refFilePath = refFilePaths[i].file_string();
-        std::string resFilePath = resultFilePath.file_string();
+        std::string refFilePath = refFilePaths[i].string();
+        std::string resFilePath = resultFilePath.string();
 
         int lLine, lCol; 
         std::string lRefLine, lResultLine;
@@ -879,23 +879,23 @@
   // Make sure the directories exist. For the results dir, if it doesn't exist,
   // it is created.
   //
-  path = fs::system_complete(fs::path(queriesDir, fs::native));
+  path = fs::system_complete(fs::path(queriesDir));
   if (!fs::is_directory(path))
   {
     std::cerr << "The directory " << queriesDir << " could not be found" << std::endl;
     exit(2);
   }
-  queries.theQueriesDir = path.native_directory_string();
+  queries.theQueriesDir = path.string();
 
-  path = fs::system_complete(fs::path(refsDir, fs::native));
+  path = fs::system_complete(fs::path(refsDir));
   if (!fs::is_directory(path))
   {
     std::cerr << "The directory " << refsDir << " could not be found" << std::endl;
     exit(2);
   }
-  queries.theRefsDir = path.native_directory_string();
+  queries.theRefsDir = path.string();
 
-  path = fs::system_complete(fs::path(resultsDir, fs::native));
+  path = fs::system_complete(fs::path(resultsDir));
   if (!fs::exists(path))
   {
     fs::create_directories(path);
@@ -905,7 +905,7 @@
     std::cerr << "The pathname " << resultsDir << " is not a directory" << std::endl;
     exit(2);
   }
-  queries.theResultsDir = path.native_directory_string();
+  queries.theResultsDir = path.string();
 
   //
   // Search and collect all the query files in the bucket, unless some
@@ -934,7 +934,7 @@
         continue;
       }
 
-      std::string queryFile = queryPath.file_string();
+      std::string queryFile = queryPath.string();
       std::string relativeQueryFile = queryFile.substr(queries.theQueriesDir.size());
 
       queries.theQueryFilenames.push_back(relativeQueryFile);
@@ -1054,23 +1054,23 @@
     bool queryWasKnownToFail = false;
     if (haveKnownFailures) 
     {
-      queryWasKnownToFail = (knownFailures.count(queryName.file_string()) != 0);
+      queryWasKnownToFail = (knownFailures.count(queryName.string()) != 0);
     }
 
     if (queries.theQueryStates[i] == false)
     {
       numFailures++;
-      failedTests << queryName.file_string() << std::endl;
+      failedTests << queryName.string() << std::endl;
 
       if (haveKnownFailures && !queryWasKnownToFail)
       {
         numRegressions++;
         report << "REGRESSION:" << i << ":"
-               << queryName.file_string() << std::endl;
+               << queryName.string() << std::endl;
       }
       else if (!haveKnownFailures)
       {
-        report << i << ":" << queryName.file_string() << std::endl;
+        report << i << ":" << queryName.string() << std::endl;
       }
     }
     else
@@ -1079,13 +1079,13 @@
       {
         numProgressions++;
         report << "Progression:" << i << ":"
-               << queryName.file_string() << std::endl;
+               << queryName.string() << std::endl;
       }
     }
     if(generateW3CData)
     {
       std::string status = (queries.theQueryStates[i] ==  true)?"pass":"fail";
-      XMLreport << "<Test Status='" << status << "'><Name>" << queryName.file_string() << "</Name></Test>" << std::endl;
+      XMLreport << "<Test Status='" << status << "'><Name>" << queryName.string() << "</Name></Test>" << std::endl;
     }
   }
 

