From 5fc981c1957960bbc07b4c4103ebf2b1404b4294 Mon Sep 17 00:00:00 2001
From: John Marshall <john.marshall@sanger.ac.uk>
Date: Mon, 17 Mar 2014 17:18:27 +0000
Subject: [PATCH] Move "using namespace std" after #includes

...so that namespace "std" already exists when we try to use it,
as it will have been declared by the standard headers #included.
Doing otherwise elicits a warning from clang.
---
 src/intersectFile/intersectFile.h                            | 2 --
 src/intersectFile/intersectMain.cpp                          | 3 ++-
 src/mapFile/mapFile.h                                        | 2 --
 src/mapFile/mapMain.cpp                                      | 3 ++-
 src/nekSandbox1/nekSandboxMain.cpp                           | 2 --
 src/regressTest/RegressTest.h                                | 5 +++--
 src/sampleFile/SampleFile.h                                  | 4 ++--
 src/utils/BinTree/BinTree.h                                  | 4 ++--
 src/utils/FileRecordTools/FileReaders/BamFileReader.h        | 2 --
 src/utils/FileRecordTools/FileReaders/BufferedStreamMgr.h    | 2 --
 src/utils/FileRecordTools/FileReaders/FileReader.h           | 4 ++--
 src/utils/FileRecordTools/FileReaders/InputStreamMgr.h       | 4 ++--
 .../FileReaders/SingleLineDelimTextFileReader.h              | 2 --
 .../FileReaders/SingleLineDelimTransferBuffer.cpp            | 2 ++
 .../FileReaders/SingleLineDelimTransferBuffer.h              | 2 --
 src/utils/FileRecordTools/FileRecordMgr.h                    | 4 ++--
 src/utils/FileRecordTools/Records/BlockMgr.h                 | 5 +++--
 src/utils/FileRecordTools/Records/Record.h                   | 5 +++--
 src/utils/FileRecordTools/Records/RecordKeyList.h            | 5 -----
 src/utils/FileRecordTools/Records/StrandQueue.h              | 4 ++--
 src/utils/KeyListOps/KeyListOpsMethods.h                     | 4 ++--
 src/utils/NewChromsweep/NewChromsweep.h                      | 2 --
 src/utils/RecordOutputMgr/RecordOutputMgr.h                  | 2 --
 src/utils/fileType/FileRecordTypeChecker.h                   | 4 ++--
 src/utils/general/CompressionTools.h                         | 2 --
 src/utils/general/FreeList.h                                 | 4 ++--
 src/utils/general/ParseTools.h                               | 4 ++--
 src/utils/general/PushBackStreamBuf.h                        | 4 ++--
 src/utils/general/QuickString.h                              | 3 ++-
 src/utils/general/Tokenizer.h                                | 4 ++--
 30 files changed, 41 insertions(+), 58 deletions(-)

diff --git a/src/intersectFile/intersectFile.h b/src/intersectFile/intersectFile.h
index c1f86743..869e7e15 100644
--- a/src/intersectFile/intersectFile.h
+++ b/src/intersectFile/intersectFile.h
@@ -12,8 +12,6 @@
 #ifndef INTERSECTFILE_H
 #define INTERSECTFILE_H
 
-using namespace std;
-
 #include "RecordKeyList.h"
 
 using namespace std;
diff --git a/src/intersectFile/intersectMain.cpp b/src/intersectFile/intersectMain.cpp
index 9f38f3c3..98f140fe 100644
--- a/src/intersectFile/intersectMain.cpp
+++ b/src/intersectFile/intersectMain.cpp
@@ -9,11 +9,12 @@
 
   Licenced under the GNU General Public License 2.0 license.
 ******************************************************************************/
-using namespace std;
 
 #include "intersectFile.h"
 #include "ContextIntersect.h"
 
+using namespace std;
+
 // define our program name
 #define PROGRAM_NAME "bedtools intersect"
 
diff --git a/src/mapFile/mapFile.h b/src/mapFile/mapFile.h
index 6009bf88..38cbcda1 100644
--- a/src/mapFile/mapFile.h
+++ b/src/mapFile/mapFile.h
@@ -12,8 +12,6 @@
 #ifndef MAPFILE_H
 #define MAPFILE_H
 
-using namespace std;
-
 #include <sstream>
 #include <iomanip>
 #include "VectorOps.h"
diff --git a/src/mapFile/mapMain.cpp b/src/mapFile/mapMain.cpp
index 933fe0c1..99b5e881 100644
--- a/src/mapFile/mapMain.cpp
+++ b/src/mapFile/mapMain.cpp
@@ -9,11 +9,12 @@
 
   Licenced under the GNU General Public License 2.0 license.
 ******************************************************************************/
-using namespace std;
 
 #include "mapFile.h"
 #include "ContextMap.h"
 
+using namespace std;
+
 // define our program name
 #define PROGRAM_NAME "bedtools map"
 
diff --git a/src/nekSandbox1/nekSandboxMain.cpp b/src/nekSandbox1/nekSandboxMain.cpp
index 6e895b2e..406d315b 100644
--- a/src/nekSandbox1/nekSandboxMain.cpp
+++ b/src/nekSandbox1/nekSandboxMain.cpp
@@ -1,5 +1,3 @@
-using namespace std;
-
 #include "ContextIntersect.h"
 #include "FileRecordMgr.h"
 #include <iostream>
diff --git a/src/regressTest/RegressTest.h b/src/regressTest/RegressTest.h
index 93064dc0..51fd33a3 100644
--- a/src/regressTest/RegressTest.h
+++ b/src/regressTest/RegressTest.h
@@ -8,12 +8,13 @@
 #ifndef REGRESSTEST_H_
 #define REGRESSTEST_H_
 
-using namespace std;
-
 #include <string>
 #include <cstdio>
 #include <vector>
 #include <fstream>
+
+using namespace std;
+
 class SingleLineDelimTextFileReader;
 class BufferedStreamMgr;
 
diff --git a/src/sampleFile/SampleFile.h b/src/sampleFile/SampleFile.h
index 11a1b49b..f4778c18 100644
--- a/src/sampleFile/SampleFile.h
+++ b/src/sampleFile/SampleFile.h
@@ -8,12 +8,12 @@
 #ifndef SAMPLEFILE_H_
 #define SAMPLEFILE_H_
 
-using namespace std;
-
 #include "ContextSample.h"
 #include "Record.h"
 #include <vector>
 
+using namespace std;
+
 class FileRecordMgr;
 class Context;
 class RecordOutputMgr;
diff --git a/src/utils/BinTree/BinTree.h b/src/utils/BinTree/BinTree.h
index ce15c481..161696c1 100644
--- a/src/utils/BinTree/BinTree.h
+++ b/src/utils/BinTree/BinTree.h
@@ -8,8 +8,6 @@
 #ifndef BINTREE_H_
 #define BINTREE_H_
 
-using namespace std;
-
 #include <stdint.h>
 #include <string>
 #include <set>
@@ -19,6 +17,8 @@ using namespace std;
 #include "RecordKeyList.h"
 #include "ContextIntersect.h"
 
+using namespace std;
+
 class FileRecordMgr;
 class Record;
 
diff --git a/src/utils/FileRecordTools/FileReaders/BamFileReader.h b/src/utils/FileRecordTools/FileReaders/BamFileReader.h
index d299cc91..c158a08a 100644
--- a/src/utils/FileRecordTools/FileReaders/BamFileReader.h
+++ b/src/utils/FileRecordTools/FileReaders/BamFileReader.h
@@ -8,8 +8,6 @@
 #ifndef BAMFILEREADER_H_
 #define BAMFILEREADER_H_
 
-using namespace std;
-
 #include "FileReader.h"
 #include "QuickString.h"
 #include "api/BamReader.h"
diff --git a/src/utils/FileRecordTools/FileReaders/BufferedStreamMgr.h b/src/utils/FileRecordTools/FileReaders/BufferedStreamMgr.h
index 9be5d51d..4fd7a5f5 100644
--- a/src/utils/FileRecordTools/FileReaders/BufferedStreamMgr.h
+++ b/src/utils/FileRecordTools/FileReaders/BufferedStreamMgr.h
@@ -8,8 +8,6 @@
 #ifndef BUFFEREDSTREAMMGR_H_
 #define BUFFEREDSTREAMMGR_H_
 
-using namespace std;
-
 #include <iostream>
 #include "QuickString.h"
 #include "FileRecordTypeChecker.h"
diff --git a/src/utils/FileRecordTools/FileReaders/FileReader.h b/src/utils/FileRecordTools/FileReaders/FileReader.h
index 29c25630..73a968ba 100644
--- a/src/utils/FileRecordTools/FileReaders/FileReader.h
+++ b/src/utils/FileRecordTools/FileReaders/FileReader.h
@@ -1,8 +1,6 @@
 #ifndef FILEREADER_H_
 #define FILEREADER_H_
 
-using namespace std;
-
 #include <string>
 #include <fstream>
 #include <map>
@@ -11,6 +9,8 @@ using namespace std;
 
 #include "BufferedStreamMgr.h"
 
+using namespace std;
+
 class FileReader {
 public:
 	FileReader();
diff --git a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
index 400f80a3..da7dcde9 100644
--- a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
+++ b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
@@ -8,8 +8,6 @@
 #ifndef INPUTSTREAMMGR_H_
 #define INPUTSTREAMMGR_H_
 
-using namespace std;
-
 #include "PushBackStreamBuf.h"
 #include "InflateStreamBuf.h"
 #include "QuickString.h"
@@ -18,6 +16,8 @@ using namespace std;
 
 #include <iostream>
 
+using namespace std;
+
 class InputStreamMgr {
 public:
 	 //Contsructor: 1st arg can be "-" for stdin. set 2nd arg false if fileType already known.
diff --git a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTextFileReader.h b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTextFileReader.h
index 954ca2a1..cfb62412 100644
--- a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTextFileReader.h
+++ b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTextFileReader.h
@@ -8,8 +8,6 @@
 #ifndef SINGLELINETEXTFILEREADER_H_
 #define SINGLELINETEXTFILEREADER_H_
 
-using namespace std;
-
 #include "FileReader.h"
 #include "QuickString.h"
 
diff --git a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.cpp b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.cpp
index dec5e317..5500cae6 100644
--- a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.cpp
+++ b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.cpp
@@ -4,6 +4,8 @@
 #include <cstdio>
 #include <cstdlib>
 
+using namespace std;
+
 SingleLineDelimTransferBuffer::SingleLineDelimTransferBuffer(int numFields, char delimChar)
 : _numFields(numFields),
   _delimChar(delimChar)
diff --git a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.h b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.h
index 9398ff77..457e4fe5 100644
--- a/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.h
+++ b/src/utils/FileRecordTools/FileReaders/SingleLineDelimTransferBuffer.h
@@ -8,8 +8,6 @@
 #ifndef SINGLELINEDELIMTRANSFERBUFFER_H_
 #define SINGLELINEDELIMTRANSFERBUFFER_H_
 
-using namespace std;
-
 class SingleLineDelimTransferBuffer {
 public:
 	SingleLineDelimTransferBuffer(int numFields, char delim='\t');
diff --git a/src/utils/FileRecordTools/FileRecordMgr.h b/src/utils/FileRecordTools/FileRecordMgr.h
index 42f34681..95e459e7 100644
--- a/src/utils/FileRecordTools/FileRecordMgr.h
+++ b/src/utils/FileRecordTools/FileRecordMgr.h
@@ -8,8 +8,6 @@
 #ifndef FILERECORDMGR_H_
 #define FILERECORDMGR_H_
 
-using namespace std;
-
 #include <string>
 #include "QuickString.h"
 #include <set>
@@ -27,6 +25,8 @@ using namespace std;
 #include "RecordKeyList.h"
 #include "BlockMgr.h"
 
+using namespace std;
+
 class Record;
 class NewGenomeFile;
 
diff --git a/src/utils/FileRecordTools/Records/BlockMgr.h b/src/utils/FileRecordTools/Records/BlockMgr.h
index bf6f116f..13b76fa8 100644
--- a/src/utils/FileRecordTools/Records/BlockMgr.h
+++ b/src/utils/FileRecordTools/Records/BlockMgr.h
@@ -8,14 +8,15 @@
 #ifndef BLOCKMGR_H_
 #define BLOCKMGR_H_
 
+#include <vector>
+
 //This class handles blocks inside of a larger record, such as BED12 and BAM records.
 //Produce and manage seperate records for the sub-intervals inside the
 
-using namespace std;
-
 #include "FileRecordTypeChecker.h"
 #include "RecordKeyList.h"
 
+using namespace std;
 
 class RecordMgr;
 
diff --git a/src/utils/FileRecordTools/Records/Record.h b/src/utils/FileRecordTools/Records/Record.h
index 8e4376c1..5adbc787 100644
--- a/src/utils/FileRecordTools/Records/Record.h
+++ b/src/utils/FileRecordTools/Records/Record.h
@@ -5,15 +5,16 @@
  *      Author: nek3d
  */
 
-using namespace std;
-
 #ifndef RECORD_H_
 #define RECORD_H_
 
+#include <string>
 #include "FreeList.h"
 #include "QuickString.h"
 #include "FileRecordTypeChecker.h"
 
+using namespace std;
+
 class FileRecordMgr;
 class FileReader;
 class ChromIdLookup;
diff --git a/src/utils/FileRecordTools/Records/RecordKeyList.h b/src/utils/FileRecordTools/Records/RecordKeyList.h
index f5d12514..948f677b 100644
--- a/src/utils/FileRecordTools/Records/RecordKeyList.h
+++ b/src/utils/FileRecordTools/Records/RecordKeyList.h
@@ -8,11 +8,6 @@
 #ifndef KEYLIST_H_
 #define KEYLIST_H_
 
-
-
-
-using namespace std;
-
 #include "Record.h"
 #include "BTlist.h"
 
diff --git a/src/utils/FileRecordTools/Records/StrandQueue.h b/src/utils/FileRecordTools/Records/StrandQueue.h
index e6f0bb49..bd02b409 100644
--- a/src/utils/FileRecordTools/Records/StrandQueue.h
+++ b/src/utils/FileRecordTools/Records/StrandQueue.h
@@ -7,14 +7,14 @@
 #ifndef STRANDQUEUE_H_
 #define STRANDQUEUE_H_
 
-using namespace std;
-
 #include <vector>
 #include <queue>
 #include <cstdio>
 #include <cstdlib>
 #include "Record.h"
 
+using namespace std;
+
 class StrandQueue {
 public:
 	StrandQueue();
diff --git a/src/utils/KeyListOps/KeyListOpsMethods.h b/src/utils/KeyListOps/KeyListOpsMethods.h
index 10af9c26..16796858 100644
--- a/src/utils/KeyListOps/KeyListOpsMethods.h
+++ b/src/utils/KeyListOps/KeyListOpsMethods.h
@@ -8,14 +8,14 @@
 #ifndef KEYLISTOPSMETHODS_H_
 #define KEYLISTOPSMETHODS_H_
 
-using namespace std;
-
 #include <map>
 #include <utility> //for pair
 #include "QuickString.h"
 #include <stdint.h>
 #include "RecordKeyList.h"
 
+using namespace std;
+
 class KeyListOpsMethods {
 public:
 	KeyListOpsMethods();
diff --git a/src/utils/NewChromsweep/NewChromsweep.h b/src/utils/NewChromsweep/NewChromsweep.h
index 9552b915..480b399c 100644
--- a/src/utils/NewChromsweep/NewChromsweep.h
+++ b/src/utils/NewChromsweep/NewChromsweep.h
@@ -12,8 +12,6 @@
 #ifndef NEW_CHROMSWEEP_H
 #define NEW_CHROMSWEEP_H
 
-using namespace std;
-
 #include <string>
 #include "BTlist.h"
 #include "RecordKeyList.h"
diff --git a/src/utils/RecordOutputMgr/RecordOutputMgr.h b/src/utils/RecordOutputMgr/RecordOutputMgr.h
index 07891cc2..1a7fe609 100644
--- a/src/utils/RecordOutputMgr/RecordOutputMgr.h
+++ b/src/utils/RecordOutputMgr/RecordOutputMgr.h
@@ -8,8 +8,6 @@
 #ifndef RECORDOUTPUTMGR_H_
 #define RECORDOUTPUTMGR_H_
 
-using namespace std;
-
 #include "ContextBase.h"
 #include "RecordKeyList.h"
 #include "api/BamWriter.h"
diff --git a/src/utils/fileType/FileRecordTypeChecker.h b/src/utils/fileType/FileRecordTypeChecker.h
index 35bcc4bc..0a1ec8b6 100644
--- a/src/utils/fileType/FileRecordTypeChecker.h
+++ b/src/utils/fileType/FileRecordTypeChecker.h
@@ -8,8 +8,6 @@
 #ifndef FILERECORDTYPECHECKER_H_
 #define FILERECORDTYPECHECKER_H_
 
-using namespace std;
-
 #include <string>
 #include <cstring>
 #include <cstdio>
@@ -20,6 +18,8 @@ using namespace std;
 #include "PushBackStreamBuf.h"
 #include "Tokenizer.h"
 
+using namespace std;
+
 class FileRecordTypeChecker {
 public:
 
diff --git a/src/utils/general/CompressionTools.h b/src/utils/general/CompressionTools.h
index 8b41336a..dff6630b 100644
--- a/src/utils/general/CompressionTools.h
+++ b/src/utils/general/CompressionTools.h
@@ -8,8 +8,6 @@
 #ifndef COMPRESSIONTOOLS_H_
 #define COMPRESSIONTOOLS_H_
 
-using namespace std;
-
 #include <zlib.h>
 #include "BTlist.h"
 
diff --git a/src/utils/general/FreeList.h b/src/utils/general/FreeList.h
index 4aaa6f55..ebe253cb 100644
--- a/src/utils/general/FreeList.h
+++ b/src/utils/general/FreeList.h
@@ -8,12 +8,12 @@
 #ifndef FREELIST_H_
 #define FREELIST_H_
 
-using namespace std;
-
 #include <cstddef> //defines NULL
 #include <deque>
 #include <vector>
 
+using namespace std;
+
 template <class T>
 class FreeList {
 public:
diff --git a/src/utils/general/ParseTools.h b/src/utils/general/ParseTools.h
index 871f53bf..2ba28df3 100644
--- a/src/utils/general/ParseTools.h
+++ b/src/utils/general/ParseTools.h
@@ -8,13 +8,13 @@
 #ifndef PARSETOOLS_H_
 #define PARSETOOLS_H_
 
-using namespace std;
-
 #include <cstring> //for memset
 #include <string>
 #include <vector>
 #include "QuickString.h"
 
+using namespace std;
+
 bool isNumeric(const QuickString &str);
 
 //This method is a faster version of atoi, but is limited to a maximum of
diff --git a/src/utils/general/PushBackStreamBuf.h b/src/utils/general/PushBackStreamBuf.h
index 0c41cd5a..d2538eaa 100644
--- a/src/utils/general/PushBackStreamBuf.h
+++ b/src/utils/general/PushBackStreamBuf.h
@@ -8,11 +8,11 @@
 #ifndef PUSHBACKSTREAM_H_
 #define PUSHBACKSTREAM_H_
 
-using namespace std;
-
 #include <iostream>
 #include "BTlist.h"
 
+using namespace std;
+
 class PushBackStreamBuf: public std::streambuf {
 public:
 	friend class InputStreamMgr;
diff --git a/src/utils/general/QuickString.h b/src/utils/general/QuickString.h
index ebdfb714..1024a25f 100644
--- a/src/utils/general/QuickString.h
+++ b/src/utils/general/QuickString.h
@@ -8,12 +8,13 @@
 #ifndef QUICKSTRING_H_
 #define QUICKSTRING_H_
 
-using namespace std;
 #include <string>
 #include <stdint.h>
 #include <climits>
 #include <ostream>
 
+using namespace std;
+
 class QuickString {
 public:
 	QuickString(size_t capacity = DEFAULT_CAPACITY);
diff --git a/src/utils/general/Tokenizer.h b/src/utils/general/Tokenizer.h
index 7e9e8005..f0f7dc17 100644
--- a/src/utils/general/Tokenizer.h
+++ b/src/utils/general/Tokenizer.h
@@ -8,11 +8,11 @@
 #ifndef TOKENIZER_H_
 #define TOKENIZER_H_
 
-using namespace std;
-
 #include "QuickString.h"
 #include <vector>
 
+using namespace std;
+
 class Tokenizer {
 public:
 	Tokenizer();
-- 
GitLab